我试图加载我的网站,我得到这个错误消息:

无法识别的属性'targetFramework'。注意,属性名是区分大小写的。

<compilation debug="true" targetFramework="4.0">

该网站在我的本地PC上运行良好,但当我将其加载到主机并试图在线查看时,它无法打开。


当前回答

打开你的IIS(键入inetmgr in run)并更改你的应用程序池设置,要查看大映像右键单击映像并在新选项卡中打开映像

其他回答

这通常发生在你在web中有一个targetFramework="4.0"的属性时。但是应用程序池被设置为运行ASP. config。NET 2.0。targetFramework属性完全不能被ASP识别。NET 2.0 -因此将其更改为2.0将不会达到预期的效果。

联系技术支持/管理员,将appool切换到4.0。

你也可以完全删除这个属性,但是如果你的网站是用4.0框架编码的,那么我相信其他一些东西也会导致一个错误。

我正在使用IIS Express,而不是IIS。

问题出在应用程序主机上。配置文件位于:{solution_folder}\.vs\ Config \applicationhost.config。

其中一个应用程序池条目的managedRuntimeVersion值为“v2.0”。我把它改成了“v4.0”,它可以正常工作。

我很确定根本原因是我最近安装的NuGet包之一。

    <system.applicationHost>
       <applicationPools>
          <add name="BadAppPool1" managedRuntimeVersion="v2.0" managedPipelineMode="Integrated" CLRConfigFile="%IIS_USER_HOME%\config\aspnet.config" autoStart="true" />
       </applicationPools>
    </system.applicationHost>

将应用程序池更改为目标框架4.0而不是经典框架。

RC网站->管理网站->高级设置> 第一个选项从经典到框架4集成。

可能是你有自己的MSBUILD proj文件,并且正在使用<AspNetCompiler>任务。在这种情况下,您应该为. net4添加ToolPath。

<AspNetCompiler
    VirtualPath="/MyFacade"
    PhysicalPath="$(MSBuildProjectDirectory)\MyFacade\"
    TargetPath="$(MSBuildProjectDirectory)\Release\MyFacade"
    Updateable="true"
    Force="true"
    Debug="false"
    Clean="true"
    ToolPath="C:\Windows\Microsoft.NET\Framework\v4.0.30319\">      
</AspNetCompiler>

如果您在安装。net FrameWork之后安装IIS。您需要为IIS重新安装。net框架。所以我们需要做的就是运行aspnet_regiis -i。希望对大家有所帮助。