无法识别的属性'targetframework'

时间:2011-11-10 16:07:43

标签: iis-7 .net-4.0

  

可能重复:
  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,没有测试版等)。
  • 确保使用'aspnet_regiis.exe -iru'在IIS中正确注册了.NET 4.0。
  • 回收应用程序池,重新启动计算机。
  • 完全卸载.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
  • 部署我的项目

当我尝试添加自定义hanlder映射时,会发生同样的错误。我正在做错误/完全愚蠢的事情,或者在此设置中IIS7存在一些问题。 IIS无法识别.NET 4.0中的“targetFramework”属性,即使我的应用程序池设置为使用.NET 4.0。

如果我使用命令'aspnet_regiis -lv',它告诉我只有.NET 4注册了IIS。

2 个答案:

答案 0 :(得分:64)

向IIS注册框架对我有用:

C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319>aspnet_regiis -i

答案 1 :(得分:31)

您是否在“默认网站”站点节点下设置了站点,或者是否在IIS中创建了新站点?如果您创建了一个新站点,请尝试访问“默认网站”并将其应用程序池从“DefaulAppPool”更改为“Asp.Net v4.0”。我知道“默认网站”应该与您的网站无关,但我在某些情况下已经阅读过,这有助于解决问题。此外,为了使您的自定义图像处理程序工作,请尝试使用无配置的HTTP处理程序,并扩展.ashx文件。这样,您可以使图像处理程序工作(直到您解决此问题),而无需在IIS中注册它。