我有一个最初以4.6.1为目标的Web应用程序。此Web应用程序引用类库;而这又引用了Net Standard 1.6类库。从Net 4.6.1/4.7引用Net Standard的错误
将引用添加到Net Standard库是最新的更改,并且似乎导致它中断:Web应用程序工作正常,直到引入Net Standard库为止;在这一点,我开始收到错误:
Could not load file or assembly 'System.Runtime, Version=4.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified.
System.Runtime
包括作为NuGet包的Web应用程序。
它可能不相关,但是当我查看packages目录时;我看到System.Runtime.4.3.0 \ lib有net45
和net462
目录,但不是4.6.1或4.7(请参阅下面为什么我期望这样做)。
,我已经尝试了一些东西,都没有奏效:
- 尽管看到here是4.6.1支持网络标准1.6,我曾尝试 升级到4.7,但无济于事。
- 尝试在web.config中设置程序集重定向。这稍微改变了错误,说它正在寻找4.0.0.0,然后重新开始,但它本质上是相同的错误。
- 尝试删除软件包目录,看看我是否可以强制刷新(也试过System.Runtime Update-Package)。
- 在搜索网页时,我发现了一些类似的问题;一个在GitHub上(我似乎无法重新定位)意味着对VS2017的更新将解决该问题。
网上有足够的最新资料,让我觉得我不是唯一的人来体验这一点;尽管我还没有找到任何可能的原因的解释。任何人都可以提供关于可能导致这种情况的解释,或者我可以使用的任何诊断步骤?
您使用的是什么版本的visual studio? –
Visual Studio 2017(15.4.1) –
也许您可以创建最小化的项目来重现此问题并将其发布到某处? – Evk