无法加载文件或程序集' NuGet.Server,Version = 2.11.1.0,Culture = neutral,PublicKeyToken = null'或其中一个依赖项

时间:2017-05-24 07:33:47

标签: asp.net iis nuget nuget-package nuget-server

所以我在本教程之后通过ASP.Net Web应用程序创建了一个NuGet服务器:http://nugetserver.net/,它托管在IIS中。我已将文件放在我的服务器上的D:驱动器和我的包中。

IIS网站虚拟路径: enter image description here

导航到网址时出现以下错误enter image description here

如果图片不够清晰,请参阅以下内容:

  

无法加载文件或程序集' NuGet.Server,Version = 2.11.1.0,Culture = neutral,PublicKeyToken = null'或其中一个依赖项。定位的程序集的清单定义与程序集引用不匹配。 (HRESULT异常:0x80131040)

以下是我的项目 web.config 文件以及发布资料enter image description here enter image description here

我的目标.NET Framework版本是4.6,但程序包本身是早期版本的.NET。这可能是问题吗?我把项目文件夹放在我本地机器上的物理路径上,当我在调试模式下运行项目时它工作得很好。请看下面的截图:

注意:由于组织机密性政策,我必须隐藏软件包名称。enter image description here

我指的是这些包文件:

D:\Backup\Dropbox\vox_server_01\nuget\Packages

我创建这个NuGet服务器的原因是因为现有的服务器有问题。enter image description here

这可能是IIS中用户组的权限吗?这个链接Could not load file or assembly 'someProject' or one of its dependencies. Access is denied引导我回答这个问题。关于如何解决这个问题的任何建议?

更新:以下是我的包源: enter image description here

3 个答案:

答案 0 :(得分:1)

因为相同的问题而来到这里。有趣的是,我的解决方案也名为“ Nuget.Server”。更改我的程序集名称(在项目属性下)将其修复。将其重命名为“ NugetServer”

Change assembly name under project properties

答案 1 :(得分:0)

我无法复制您的错误,但这里有一些注意事项可以解决nuget服务器问题:

web.config中的 packagesPath 键可以留空,因为您已经使用默认文件夹\ Packages。

部署到服务器时,您可能会在projectno行中发现错误。只需在服务器上创建一个具有该名称的空白文件即可。

答案 2 :(得分:0)

如果在Web.config中具有对该NuGet.Server包的引用,请从文件中将其删除,然后尝试再次运行。完全类似于来自web.config中错误引用的BadImageFormatException

相关问题