IIS 无法识别的属性“targetFramework”。请注意属性名称区分大小写。

本文介绍了解决.NET 4.0应用程序在IIS部署时遇到的配置错误及编译错误问题,包括无法识别的属性“targetFramework”及输出文件访问被拒绝等问题,并提供了具体的解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

具体错误信息如下:

 

“/TestService”应用程序中的服务器错误。
配置错误
说明: 在处理向该请求提供服务所需的配置文件时出错。请检查下面的特定错误详细信息并适当地修改配置文件。 
分析器错误消息: 无法识别的属性“targetFramework”。请注意属性名称区分大小写。
源错误: 
行 31: 	</connectionStrings>
行 32: 	<system.web>
行 33: 		<compilation debug="true" targetFramework="4.0" />
行 34: 		<httpRuntime maxRequestLength="2097151"/>
行 35: 
“/TestService”应用程序中的服务器错误。
编译错误
说明: 在编译向该请求提供服务所需资源的过程中出现错误。请检查下列特定错误详细信息并适当地修改源代码。 
编译器错误消息: CS0016: 未能写入输出文件“c:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\Testservice\13766dd4\68cdbe1a\App_global.asax.xg2wm_nf.dll”--“拒绝访问。 ”
源错误:
[没有相关的源行]
源文件:    行: 0 
显示详细的编译器输出:
版本信息: Microsoft .NET Framework 版本:4.0.30319; ASP.NET 版本:4.0.30319.34280

 

 

 

错误原因:

       部署网站时,使用的应用程序池版本不对!

    解决方案:

       我的应用程序是在.NET 4.0下开发的,所以应用程序池应使用.NET4.0版本。如果您的电脑上没有安装相应版本的框架,下载一个安装上即可。

      
我的配置文件中是这样写的,<compilation debug="true" targetFramework="4.0">
发布在iis上出现了 “无法识别的属性“targetFramework”。请注意属性名称区分大小写。”
首先要确定的是大小写不可能出错,如果出错的话 vs 一定会帮我们检查出来的,那么就可能是版本不兼容的问题了  ,一般如果你的iis 是framework2.0的话,就非常的有可能
1、你需要将2.0手动改成4.0 :

2、设置应用程序的默认设置,也就是你在iis上发布网站的默认设置

其实以上两步可以省略,直接进行第三步:

3、找到自己的网站:

 

个人微信公众号:

作者:jiankunking 出处:http://blog.csdn.net/jiankunking

### 关于目标框架(Target Framework)无法识别的解决方案 当遇到“无法识别属性targetFramework’”这一错误时,通常是因为 IIS 或 Web 应用程序的配置存在问题。以下是详细的分析和解决方法: #### 1. **确认 IIS 的 .NET 版本** 如果您的 IIS 使用的是旧版的 .NET Framework(例如 2.0),而应用程序的目标框架设置为较新的版本(例如 4.0 或更高),就会引发此错误。因此,需要确保 IIS 支持的应用程序池运行在正确的 .NET Framework 版本下。 修改方式如下: - 打开 IIS 管理器。 - 转到“应用池”,找到对应网站的应用程序池。 - 右键单击该应用程序池并选择“基本设置”。 - 将“.NET CLR 版本”更改为支持 `v4.0` 的版本[^2]。 #### 2. **检查 web.config 文件中的配置** 确认 `web.config` 文件中 `<compilation>` 元素的正确性。常见的错误可能包括拼写错误或不匹配的目标框架版本号。标准的配置应类似于以下内容: ```xml <configuration> <system.web> <compilation debug="true" targetFramework="4.0"> </compilation> </system.web> </configuration> ``` 如果您正在使用更新的框架版本(如 4.5 或以上),则需相应调整 `targetFramework` 属性值。例如: ```xml <compilation debug="true" targetFramework="4.7.2"> ``` 此外,请注意 XML 中的大小写敏感性,任何字符的小写或大写差异都可能导致解析失败[^3]。 #### 3. **验证项目的目标框架版本** 在 Visual Studio 中打开该项目,并检查其目标框架是否与实际使用的框架一致。具体操作步骤如下: - 右键点击项目名称,在弹出菜单中选择“属性”。 - 切换至“Application”选项卡。 - 查看“Target framework”的设定值,确保它与 `web.config` 文件中的 `targetFramework` 值相匹配[^1]。 #### 4. **重新发布应用程序** 完成上述更改后,建议清理并重新构建整个解决方案,随后再次将最新版本的代码部署到服务器上。这可以有效避免因缓存或其他遗留数据引起的潜在冲突问题[^4]。 通过执行这些措施,大多数情况下能够成功消除“无法识别属性targetFramework’”这个错误提示。 --- ### 示例代码片段 假设当前项目的 `.NET Framework` 设置为 `4.6.1`,那么对应的 `web.config` 配置应该像下面这样定义: ```xml <configuration> <system.web> <compilation debug="true" targetFramework="4.6.1"/> </system.web> </configuration> ``` ---
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值