Asp.net Core 2.0 with .net framework 4.6.1 - 找不到引用程序集'.NETFramework / v4.6.1 / Microsoft.CSharp.dll

时间:2018-02-07 19:35:25

标签: asp.net .net asp.net-core .net-core asp.net-core-2.0

我最近将我的项目从asp.net core 1.1升级到asp.net core 2.0。并使用.Net framework 4.6.1向我们提供应用程序。应用程序在本地开发计算机上按预期工作,但一旦使用dotnet publish命令部署到服务器,我看到此错误

  

InvalidOperationException:找不到引用程序集   包的“.NETFramework / v4.6.1 / Microsoft.CSharp.dll”文件   Microsoft.CSharp.Reference

我还注意到,在发布时使用asp.net核心1.1时使用的 ref 文件夹现在丢失了。如何解决这个问题。

3 个答案:

答案 0 :(得分:5)

将MvcRazorCompileOnPublish添加到.csproj文件时解决了同样的问题。

试一试。

<MvcRazorCompileOnPublish>true</MvcRazorCompileOnPublish>
<MvcRazorExcludeRefAssembliesFromPublish>false</MvcRazorExcludeRefAssembliesFromPublish>

答案 1 :(得分:1)

我注意到启动IIS池时,如果已将Views文件夹包含在已编译的View.dll中,则会收到此错误。我之所以这样做是为了短期解决hack。

答案 2 :(得分:0)

就我而言(我在控制台应用程序模式下运行.Net core)上述解决方案均无效,我只是从this链接下载了.Net Framework 4.6.1。