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

本文提供了两种有效解决.NET项目中因缺失Microsoft.CodeDom.Providers.DotNetCompilerPlatform导致的编译错误的方法。第一种方法是在每个受影响的项目中通过NuGet包管理器安装该包;第二种方法是检查并正确设置项目的启动项。

 

网上说的解决方案有两个,第一:什么删除目录下的.java文件,   这个方法 对我没效果;第二:删除.csproj文件中.DotNetCompilerPlatform.CSharpCodeProvider相关的节点,这个方法对我来说也没用。

后面找到两种对我的错误有效的方法:

第一种:

1.工具->NuGet包管理器->程序包管理控制台

 

2.在程序包管理控制台中输入 PM> Install-Package Microsoft.CodeDom.Providers.DotNetCompilerPlatform   回车运行,提示安装成功,重启项目,就可以了。我是已经执行成功了,所以提示已经存在,如果是第一次执行,那会提示安装成功

 

 

说明:如果你的项目里面,有多个Web项目,那就根据以上操作,每个项目都执行一遍上面的那个命令(逐个设置每个项目 为 启动项,然后输入命令 回车运行)。

如果过程中 有一些情况出现,那每执行一个项目,就关掉vs,重启vs,然后再设置其他项目为启动项,然后执行命令PM> Install-Package Microsoft.CodeDom.Providers.DotNetCompilerPlatform

第二种:

在多模块开发中,有多个项目,请确认你当前运行时 启动项,是不是你解决方案的启动项,如果不是,则将启动项 改为 项目所设置的启动项,

查看项目启动项的方法:右击解决方案->属性,如下图

默认的单启动项  就是当前解决方案的启动项

 

转载于:https://www.cnblogs.com/LJP-JumpAndFly/p/7190005.html

<?xml version="1.0" encoding="utf-8"?> <!-- 有关如何配置 ASP.NET 应用程序的详细信息,请访问 https://go.microsoft.com/fwlink/?LinkId=169433 --> <configuration> <connectionStrings> <add name="DB-NetShopsConnectionString" connectionString="Data Source=.\MSSQLSERVER2012;Initial Catalog=DB-NetShops;User ID=sa;Password=your_password;Integrated Security=False" providerName="System.Data.SqlClient" /> </connectionStrings> <system.web> <!-- 添加全局cookie设置 --> <httpCookies httpOnlyCookies="true" /> <compilation debug="true" targetFramework="4.7.2" /> <httpRuntime targetFramework="4.7.2" maxRequestLength="20480" executionTimeout="300" requestValidationMode="4.7.2" /> <!-- 移除httpOnlyCookies属性 --> <sessionState mode="InProc" timeout="20" /> <authentication mode="Forms"> <!-- 移除httpOnlyCookies属性 --> <forms loginUrl="~/WebForm1.aspx" defaultUrl="~/WebForm2.aspx" timeout="20" /> </authentication> <globalization culture="zh-CN" uiCulture="zh-CN" requestEncoding="utf-8" responseEncoding="utf-8" /> <customErrors mode="RemoteOnly" defaultRedirect="~/Error.aspx"> <error statusCode="404" redirect="~/404.aspx" /> <error statusCode="500" redirect="~/500.aspx" /> </customErrors> </system.web> <system.webServer> <httpProtocol> <customHeaders> <add name="X-Content-Type-Options" value="nosniff" /> <add name="X-Frame-Options" value="SAMEORIGIN" /> <add name="X-Xss-Protection" value="1; mode=block" /> </customHeaders> </httpProtocol> <staticContent> <clientCache cacheControlMode="UseMaxAge" cacheControlMaxAge="7.00:00:00" /> </staticContent> <security> <requestFiltering> <requestLimits maxAllowedContentLength="20971520" /> </requestFiltering> </security> </system.webServer> <system.codedom> <compilers> <compiler language="c#;cs;csharp" extension=".cs" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=2.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:default /nowarn:1659;1699;1701" /> </compilers> </system.codedom> </configuration> 仅为这段代码添加母版页代码,并给出完整代码,不要增加或修改无关部分
06-12
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值