c# dotnet 项目失败 运行: 未找到程序集文件
c# dotnet project fails to run: assembly file not found
我正在尝试在 Debian 9.9 (stretch) 下获得一个 dotnet 项目 运行。
我从这里克隆了存储库:
https://github.com/Montesuma80/3cx-web-API
安装 dotnet 包(Microsoft 存储库中的 3.1 SDK)后,构建失败,因为未找到列出的依赖项。我编辑了 .csproj 文件以匹配我系统中 dll 文件在 HintPath-Tag 中的实际位置(它是本地安装的 phone 系统):
<ItemGroup>
<Reference Include="3cxpscomcpp2">
<HintPath>/usr/lib/3cxpbx/3cxpscomcpp2.dll</HintPath>
<Private>false</Private>
</Reference>
</ItemGroup>
修改后代码编译成功
但是当运行编译代码时,我得到以下错误:
System.IO.FileNotFoundException: Could not load file or assembly '3cxpscomcpp2, Version=2.0.0.0, Culture=neutral, PublicKeyToken=53c4927ce4749cb4'. The system cannot find the file specified.
File name: '3cxpscomcpp2, Version=2.0.0.0, Culture=neutral, PublicKeyToken=53c4927ce4749cb4'
at WebAPI.Program.Bootstrap(String[] args)
at WebAPI.Program.Main(String[] args) in /root/webapi/3cx-web-API/Program.cs:line 418
文件确实存在于指定的路径中。我尝试删除 bin 和 obj 文件夹并重新开始,同时将 dll 复制到项目目录,结果相同。构建工作正常,但 运行 找不到程序集。我检查了我系统上dll文件的版本,2.0.0.0是正确的版本。
非常感谢任何帮助。
移除
<Private>False</Private>
来自 Reference
设置后 - dll 不会复制到 bin 文件夹
我正在尝试在 Debian 9.9 (stretch) 下获得一个 dotnet 项目 运行。
我从这里克隆了存储库: https://github.com/Montesuma80/3cx-web-API
安装 dotnet 包(Microsoft 存储库中的 3.1 SDK)后,构建失败,因为未找到列出的依赖项。我编辑了 .csproj 文件以匹配我系统中 dll 文件在 HintPath-Tag 中的实际位置(它是本地安装的 phone 系统):
<ItemGroup>
<Reference Include="3cxpscomcpp2">
<HintPath>/usr/lib/3cxpbx/3cxpscomcpp2.dll</HintPath>
<Private>false</Private>
</Reference>
</ItemGroup>
修改后代码编译成功
但是当运行编译代码时,我得到以下错误:
System.IO.FileNotFoundException: Could not load file or assembly '3cxpscomcpp2, Version=2.0.0.0, Culture=neutral, PublicKeyToken=53c4927ce4749cb4'. The system cannot find the file specified.
File name: '3cxpscomcpp2, Version=2.0.0.0, Culture=neutral, PublicKeyToken=53c4927ce4749cb4'
at WebAPI.Program.Bootstrap(String[] args)
at WebAPI.Program.Main(String[] args) in /root/webapi/3cx-web-API/Program.cs:line 418
文件确实存在于指定的路径中。我尝试删除 bin 和 obj 文件夹并重新开始,同时将 dll 复制到项目目录,结果相同。构建工作正常,但 运行 找不到程序集。我检查了我系统上dll文件的版本,2.0.0.0是正确的版本。
非常感谢任何帮助。
移除
<Private>False</Private>
来自 Reference
设置后 - dll 不会复制到 bin 文件夹