IIS 7-无法识别的属性“ targetframework”

可能重复:
无法识别的属性“ targetFramework”。 请注意,属性名称区分大小写

首先,让我说,我知道这个问题已经在此站点上问过几次了,但是所有这些问题的答案都不能解决我的问题。

我尝试在IIS7中添加新的托管处理程序时遇到以下问题:

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

环境是安装了IIS7的Windows Server Enterprise 2008 SP1。

我的应用程序正在使用.NET 4.0。 在IIS之后安装了.NET框架:

我尝试过/检查了以下内容:

  • 我的应用程序池使用的是.NET 4.0(我安装了一个.NET 4.0版本,没有beta版等)。
  • 确保使用'aspnet_regiis.exe -iru'向IIS正确注册.NET 4.0。
  • 回收了应用程序池,重新启动了计算机。
  • 完全卸载.NET 4.0,然后重新安装它。
  • 删除了'targetFramework'属性-这只会在其他地方导致崩溃。

在我看来,即使我在IIS中的应用程序池告诉我它们正在使用.NET 4.0,IIS仍以某种方式仍引用.NET的早期版本。

我的网站加载正常,但是由于这个问题,我无法设置自定义图像处理程序。

我将不胜感激任何建议。

谢谢。

更新

这太疯狂了。我已经完全从零开始对环境进行了重建:

  • 从MSDN下载“没有Hyper V SP1的Windows Server Enterprise”。
  • 安装.NET 4.0
  • 安装ASP.NET MVC 3
  • 添加“ Web服务器”角色-确保应用程序池正在使用.NET 4.0
  • 部署我的项目

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

如果我使用命令“ aspnet_regiis -lv”,它将告诉我只有.NET 4向IIS注册。

Jimmy Collins asked 2020-07-11T21:18:38Z
2个解决方案
64 votes

在IIS中注册框架对我有用:

C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319>aspnet_regiis -i
kenik answered 2020-07-11T21:19:49Z
31 votes

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

bbeny answered 2020-07-11T21:20:10Z
translate from https://stackoverflow.com:/questions/8082517/unrecognized-attribute-targetframework