【问题标题】:unrecognized attribute 'targetframework' [duplicate]无法识别的属性'targetframework' [重复]
【发布时间】: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.@我并让我知道这是否解决了您的问题,我可能会尝试为此错误获取规范的问题/答案并关闭欺骗。谢谢。

标签: iis-7 .net-4.0


【解决方案1】:

向 IIS 注册框架对我有用:

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

【讨论】:

  • 非常感谢,它也对我有用。
  • 请注意那里的>,我把它误认为是完整路径。
  • 我真的不明白为什么在安装带有 asp.net 的 IIS 时必须这样做:/
  • 这对我不起作用...同样的错误,没有变化。
  • 也适合我
【解决方案2】:

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

【讨论】:

  • 这是一个在 IIS 下运行在不同端口上的独立站点。我的默认网站在同一个 .NET 4.0 应用程序池下运行。我刚刚注意到的一件事是,在 IIS -> .NET 编译 -> 常规 -> 程序集下,所有程序集似乎都指向 2.0 版
  • 我也有大多数 IIS>>.NET 编译>>常规>>程序集指向 2.0 版,而其他一些指向 3.0 和 3.5。这只是标识了构建这些程序集的 .net 版本。我不确定这与您的问题有什么关系。
  • 谢谢!这对我有用。绝对疯了。这是一个错误吗?
  • 更改应用程序池的“.NET Framework 版本”对我有用!
猜你喜欢
  • 2014-03-04
  • 1970-01-01
  • 2014-01-13
  • 2011-12-26
  • 1970-01-01
  • 2017-05-28
  • 1970-01-01
  • 2015-02-05
  • 2013-07-04
相关资源
最近更新 更多