[解决方案]未能找到路径“~\bin\roslyn\csc.exe”的一部分

我的WebApi项目使用Nuget加载了一些包以后出现了这样的问题,本地可以访问,但发布到线上后,出现这样的报错

[解决方案]未能找到路径“~\bin\roslyn\csc.exe”的一部分

 

这个问题出现的原因是Nuget的时候,多加载了一些项目可能不需要的依赖库所导致的。

 

 解决方法:

1.先将多余的依赖库删掉,一般是

  Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.0
  Microsoft.Net.Compilers

  这俩个

2.删除web.config中加载的这个依赖的代码段

  <system.codedom>
    <compilers>
      <compiler language="c#;cs;csharp" extension=".cs" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.7.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:default /nowarn:1659;1699;1701" />
      <compiler language="vb;vbs;visualbasic;vbscript" extension=".vb" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.VBCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.7.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:default /nowarn:41008 /define:_MYTYPE=\"Web\" /optionInfer+" />
    </compilers>
  </system.codedom>

3.重新生成后,发布到线上,你会发现OK了

 

关注公众号,提出您的问题,我们会解决您的问题哟!

公众号:sxmljs

[解决方案]未能找到路径“~\bin\roslyn\csc.exe”的一部分

 

上一篇:VS中怎样使用Nuget添加MQTTnet依赖


下一篇:[经验分享]如何发布NuGet包