2014-01-17 2 views
0

Я пытался создать проект, но в web.config он продолжает давать мне ошибку, что он не распознает атрибут TargetFramework.Атрибут TargetFramework ASP.NET не распознается

EDIT: добавлен web.config. Я видел один вопрос с той же проблемой, и они сказали там, что она должна быть той же версии, что и версия ASP.NET. Но я не вижу, как это сделать.

P.S. Я не могу перейти на другую версию Visual Studio (я использую эту программу), так как она не позволит мне запускать файлы в локальной сети. Но это другая проблема.

Некоторое время сейчас. Угадайте, что это сложная проблема.

<?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> 
+1

Можете ли вы опубликовать часть своего конфигурационного файла с этой строкой? –

+0

Неверная версия asp.net - вы, вероятно, используете какой-то атрибут, который не для версии asp.net, которую вы запускаете. – Aristos

ответ

3

Это происходит в основном, когда у вас есть атрибут targetFramework = «4,0» в web.config, но App Pool установлен для запуска ASP.NET 2.0. Атрибут targetFramework полностью не распознается ASP.NET 2.0. Это означает, что он не будет работать, даже если вы изменили его на 2.0 в файле конфигурации.

Если приложение кодируется в 4.0, то AppPool это должны быть установлены до 4,0 В IIS> Щелкните правой кнопкой мыши на WebSite> Свойства> ASP.NET> Версия> «Если прочитать 4.0.21006» не 2,0

0

Я получил эту ошибку при попытке использовать Fortify с Visual Studio. Плагин Visual Studio Fortify, похоже, хочет использовать aspnet_compiler вместо msbuild. Это было точное сообщение.

Когда я использовал инструменты командной строки, чтобы скомпилировать Fortify с помощью msbuild, он сработал. Возможно, ваша Visual Studio не использует msbuild? Вы можете попробовать преобразовать его в веб-приложение, если оно еще не было. Я думаю, что тогда Visual Studio будет использовать MSBuild по умолчанию. Не уверен, что это ваша проблема, но я получил то же самое сообщение об ошибке. Удачи.

Смежные вопросы