未能找到 CodeDom 提供程序类型

今天我的程序遇到了一个问题,导致程序无法启动了:

未能找到 CodeDom 提供程序类型“Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider,

Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35”。

 

在网上找了很多,基本上都是参考这个来写的:

未能找到 CodeDom 提供程序类型“Microsoft.VJSharp.VJSharpCodeProvider

http://www.cnblogs.com/wangyt223/p/3587672.html

 

里面提到产生问题原因:

无论你有没有用到J#,网站目录下的任何.java格式的文件都会让编译器启动VJSharpCodeProvider,把.java格式的文件删除(或先移出网站目录)就可以了。

 

然后我搜索了我的项目,根本就没有.java格式的文件!!!

他里面报错是VJSharpCodeProvider,而我的是CSharpCodeProvider,难道我要把所有的.cs文件删除了???

不可能!

 

既然我不知道这个文件为什么报错,而且我也没有办法解决。那我就去掉这个文件的引用。

然后我按照下面的步骤处理:

 

1. 打开 我的项目.csproj 为文本格式(需要提前备份)

2. 根据错误提示,查找“Microsoft.CodeDom.Providers.DotNetCompilerPlatform”。

3. 可以看到这一行:

  

4. 删除包含此文本的一行。

5. 删除后保存,重新启动此项目。

 

然后我再次启动这个项目,问题就解决了。

 

原因我不清楚。

 

后续查询:

http://stackoverflow.com/questions/33319675/the-codedom-provider-type-microsoft-codedom-providers-dotnetcompilerplatform-cs

里面提到:因为DotNetCompilerPlatform库的版本不同,需要搜索最新的DotNetCompilerPlatform库,然后重新安装,问题就可以解决。


因为没有试过,所以不确定是否可以。留给后续的网友继续探究了。

 

 

喜欢的点个赞,有建议的留个言,谢谢!

 

你可能感兴趣的:(错误重拾,报错,未能找到,CodeDom,提供程序类型,C#)