ASP.NET TargetFramework属性无法识别

时间:2014-01-17 07:47:54

标签: asp.net

我一直在尝试创建一个项目,但在web.config中,它一直给我一个错误,它无法识别属性TargetFramework。

编辑:添加了web.config。我已经看到一个问题有同样的问题,他们说它应该是与ASP.NET版本相同的版本。但我真的不知道该怎么做。

P.S。我无法更改为不同版本的Visual Studio(我使用该程序),因为它不允许我在本地Web上运行文件。但这是一个不同的问题。

现在已经有一段时间了。猜猜这是一个棘手的问题。

<?xml version="1.0"?>
<!-- 
Note: As an alternative to hand editing this file you can use the 
web admin tool to configure settings for your application. Use
the Website->Asp.Net Configuration option in Visual Studio.
A full list of settings and comments can be found in 
machine.config.comments usually located in 
\Windows\Microsoft.Net\Framework\v2.x\Config  
-->
<configuration>
<appSettings/>
<connectionStrings/>
<system.web>
    <!-- 
        Set compilation debug="true" to insert debugging 
        symbols into the compiled page. Because this 
        affects performance, set this value to true only 
        during development.
    -->
    <compilation debug="true" targetFramework="4.0">
        <assemblies>



            </assemblies>
    </compilation>
    <!--
        The <authentication> section enables configuration 
        of the security authentication mode used by 
        ASP.NET to identify an incoming user. 
    -->
    <authentication mode="Windows"/>
    <!--
        The <customErrors> section enables configuration 
        of what to do if/when an unhandled error occurs 
        during the execution of a request. Specifically, 
        it enables developers to configure html error pages 
        to be displayed in place of a error stack trace.

    <customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">
        <error statusCode="403" redirect="NoAccess.htm" />
        <error statusCode="404" redirect="FileNotFound.htm" />
    </customErrors>
    -->
    <pages controlRenderingCompatibilityVersion="3.5" clientIDMode="AutoID"/>        </system.web>
<system.codedom>
</system.codedom>
<!-- 
    The system.webServer section is required for running ASP.NET AJAX under Internet
    Information Services 7.0.  It is not necessary for previous version of IIS.
-->
<system.webServer>
</system.webServer>
</configuration>

2 个答案:

答案 0 :(得分:3)

这种情况基本上发生在web.config中有targetFramework =“4.0”属性但App Pool设置为运行ASP.NET 2.0时。 ASP.NET 2.0完全无法识别targetFramework属性 - 这意味着即使您在配置文件中将其更改为2.0,它也无法工作。

如果您的应用程序是用4.0编码的,那么AppPool需要设置为4.0 在IIS中&gt;右键单击WebSite&gt;属性&gt; ASP.NET&gt;版本&gt; “应该阅读4.0.21006”而不是2.0

答案 1 :(得分:0)

尝试在Visual Studio中使用Fortify时出现此错误。 Visual Studio Fortify插件似乎想要使用aspnet_compiler而不是msbuild。它抛出了确切的信息。

当我使用命令行工具使用msbuild编译Fortify时,它工作正常。也许你的Visual Studio没有使用msbuild?您可能想尝试将其转换为Web应用程序(如果尚未将其转换为Web应用程序)。我认为Visual Studio默认会使用MSBuild。不确定这是不是你的问题,但我确实得到了完全相同的错误信息。祝你好运。