【发布时间】:2011-12-26 07:40:45
【问题描述】:
可能重复:
Unrecognized attribute 'targetFramework'. Note that attribute names are case-sensitive
首先,让我说,我知道这个问题已经在这个网站上被问过几次 - 但所有这些问题的答案都不能解决我的问题。
当我尝试在 IIS7 中添加新的托管处理程序时,我看到了以下问题:
无法识别的属性“targetFramework”。注意属性名 区分大小写。
环境是安装了 IIS7 的 Windows Server Enterprise 2008 SP1。
我的应用程序正在使用 .NET 4.0。 .NET 框架是在 IIS 之后安装的:
我已经尝试/检查了以下内容:
- 我的应用程序池使用 .NET 4.0(我安装了一个 .NET 4.0 版本,没有测试版等)
- 确保 .NET 4.0 使用“aspnet_regiis.exe -iru”在 IIS 中正确注册。
- 回收应用程序池,重启机器。
- 完全卸载 .NET 4.0,然后重新安装。
- 删除了“targetFramework”属性 - 这只会导致其他地方崩溃。
在我看来,IIS 似乎仍在以某种方式引用以前版本的 .NET,即使我在 IIS 中的应用程序池告诉我他们使用的是 .NET 4.0。
我的网站加载正常,但由于这个问题,我无法设置自定义图像处理程序。
如果有任何建议,我将不胜感激。
谢谢。
更新
这太疯狂了..我已经完全从头开始被环境重建了:
- 从 MSDN 下载“不带 Hyper V SP1 的 Windows Server Enterprise”。
- 安装 .NET 4.0
- 安装 ASP.NET MVC 3
- 添加“Web 服务器”角色 - 确保应用程序池使用 .NET 4.0
- 部署我的项目
当我尝试添加自定义处理程序映射时,也会出现同样的错误。我要么做错事/完全愚蠢,要么在这个设置中 IIS7 存在一些问题。 IIS 无法识别 .NET 4.0 中的“targetFramework”属性,即使我的应用程序池设置为使用 .NET 4.0。
如果我使用命令“aspnet_regiis -lv”,它会告诉我只有 .NET 4 注册到 IIS。
【问题讨论】:
-
你没有提到尝试这个解决方案:stackoverflow.com/questions/5420094/…
-
我已经看过了——我的 IIS 版本是 7,而虚拟目录绝对使用 .NET 4.0(至少根据 IIS)。此时我正在考虑从头开始重建整个环境。
-
应用程序池中显示的确切 .NET 版本号是多少?是
4.0.21006.1吗?您还可以展示您的 web.config 的外观吗? -
4.0.3 可能会解决此问题。 You can check out the KB article here.@我并让我知道这是否解决了您的问题,我可能会尝试为此错误获取规范的问题/答案并关闭欺骗。谢谢。