ASP.NET 4.5 не был зарегистрирован на веб-сервере

175

На моей машине разработки Win 7 и для того, чтобы использовать экземпляр SQL Express вместо localDB, установленного по умолчанию. Я снял флажок «Использовать IIS Express» на странице свойств проекта MVC 4 (вкладка «Веб»), после чего я получил следующую ошибку:

ASP.NET 4.5 не был зарегистрирован на веб-сервере. Вам необходимо вручную настроить веб-сервер для ASP.NET 4.5, чтобы ваш сайт работал правильно.

Я проверил, что ASP.NET активирован в функциях IIS.

Пожалуйста, что можно сделать, чтобы решить эту проблему?

Сами-L
источник
Просто для других, кто придет сюда: Вам также нужно настроить свой файл web.config, добавив targetFramework="4.5"атрибут к <compilation>элементу.
Уве Кейм

Ответы:

213

Возможно, вам нужно выполнить следующее в командной строке Visual Studio Tools :

aspnet_regiis -i

Подробнее об инструменте регистрации ASP.NET IIS (Aspnet_regiis.exe) можно прочитать здесь .

Алекс Филиповичи
источник
2
aspnet_regiis -i не распознается как внутренняя команда, это возвращаемое сообщение об ошибке.
Сами-Л
32
Я мог бы окончательно решить проблему, я запустил командную строку разработчика Visual Studio в качестве администратора, затем запустил C: \ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319> aspnet_regiis -i
Sami-L
27
@ Sami-L Важное примечание: в действительности нет необходимости использовать cmd VS (которого у вас, вероятно, нет при установке новой ОС). Все, что вам нужно, это командная строка (cmd) и запуск aspnet_regiisиз последней библиотеки .Net Framework:C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe /i
i3arnon
2
Сегодня (2015) проблема, скорее всего, связана с ошибкой, упомянутой в этом ответе: stackoverflow.com/a/30352820/1121033
связана
23
Для Visual Studio 2012 вам действительно нужно скачать обновление, чтобы исправить это здесь: support.microsoft.com/en-us/kb/3002339
Sameer Alibhai
103

В Windows 8.1, поскольку .NET 4.5 является встроенным, исправление заключается в запуске этого из административной командной строки:

dism.exe /Online /Enable-Feature /all /FeatureName:IIS-ASPNET45
NYCdotNet
источник
1
Является ли /allнеобходимым? Здесь: support.microsoft.com/kb/2736284 они не указывают это ...
CITBL
5
Согласно командной строке dism в Windows 8.1, / all автоматически включает родительские функции. В этом случае конкретно упоминаются NetFx4Extended-ASPNET45 и IIS-NetFxExtensibility45, если вы не укажете / all.
NYCdotNet
1
Он показывает ошибку: 87 и выдает сообщение, что эта функция неизвестна. Что делать?
Сурадж
Исправлена ​​проблема в Windows 2012 с IIS8
Джейсон Мэсси
65

Если вы установили .NET Framework 4.6, вы можете увидеть эту ошибку из-за ошибки VS. Обходные пути и решения здесь:

http://blogs.msdn.com/b/webdev/archive/2014/11/11/dialog-box-may-be-displayed-to-users-when-opening-projects-in-microsoft-visual-studio- после установки-на-Microsoft-нетто-каркасного 4-6.aspx

РЕДАКТИРОВАТЬ:

Как отмечалось в некоторых комментариях, это может происходить за кулисами после обновления до Windows 10 или Visual Studio 2015.

lasseschou
источник
3
Наконец-то нашел ответ! Это происходит, когда я обновляюсь до Windows 10. Спасибо
Майкл Агилар
2
Это случилось со мной, когда я добавил VS 2015 к своему компьютеру, пока у меня еще есть 2012
SubqueryCrunch
Это исправлено в Windows 10 с .NET 4.6 и VS 2012
Стивен
2
Это было причиной моей проблемы. Обратите внимание, что это обновление 4 больше не является последним обновлением.
Питер Моррис
2
Огромное спасибо. Ты спас мой день. Я не установил .Net Framework 4.6 явно. Я установил Visual Studio 2015, что привело к неявной установке .Net framework 4.6. После установки VS 2015 я открыл существующее решение в VS 2013 (решение было создано только в VS 2013), которое начало выдавать эту asp.net 4.5 незарегистрированную ошибку. Более интересно то, что ссылка «Загрузить Visual Studio 2013 Update 4» на этой странице блога MSDN позволяет загрузить страницу обновления 5 VS 2013. Я установил только обновление 5, и это решило мою проблему.
RBT
7

Для клиентских компьютеров Windows 8 включите «IIS-ASPNET45» в «Включение и выключение компонентов Windows» в разделе «Службы IIS -> Службы всемирной паутины -> Функции разработки приложений -> ASP.NET 4.5».

Sooraj
источник
Это аналогично запуску команды: dism.exe / Online / Enable-Feature / all / FeatureName: IIS-ASPNET45
Miros
7

.NET Framework перезаписывает папку 4.0, поэтому запустите эту команду:

Зарегистрируйте .net Framework в IIS, перейдите в
Пуск -> Выполнить -> cmd -> Запуск от имени администратора:

cd C:\Windows\Microsoft.NET\Framework\v4.0.30319
aspnet_regiis.exe -i
Вед Пракаш
источник
2

Разрешил это с обновлением VS.

Перейдите по этой ссылке ( https://blogs.msdn.microsoft.com/webdev/2014/11/11/dialog-box-may-be-displayed-to-users-when-opening-projects-in-microsoft-visual- студия после установки microsoft-net-framework-4-6 / )

разрешение . Microsoft опубликовала исправление для всех уязвимых версий Microsoft Visual Studio.

Visual Studio 2013 -

Загрузите обновление 4 для Visual Studio 2013. Дополнительные сведения об обновлении 4 для Visual Studio 2013 см. В статье: Обновление 4 для Visual Studio 2013, статья KB Visual Studio 2012.

Опубликовано обновление для решения этой проблемы для Microsoft Visual Studio 2012: KB3002339 Чтобы установить это обновление непосредственно из центра загрузки Microsoft, здесь Visual Studio 2010 SP1

Опубликовано обновление для решения этой проблемы для Microsoft Visual Studio 2010 с пакетом обновления 1 (SP1): KB3002340 Это обновление доступно на веб-узле Центра обновления Windows. Чтобы установить это обновление непосредственно из центра загрузки Майкрософт, нажмите здесь.

Рахул Сононе
источник
1
Аналогичным образом, обновление 5 для Microsoft Visual Studio 2013 также решило эту проблему для меня microsoft.com/en-us/download/details.aspx?id=48129
Даррен Альфонсо,
2

Не требуется вводить c: \

Пуск -> run-> cmd -> Запуск от имени администратора и выполните команду ниже


.NET Framework версия 4 (32-разрядные системы)

% windir% \ Microsoft.NET \ Framework \ v4.0.30319 \ aspnet_regiis.exe -i

.NET Framework версия 4 (64-разрядные системы)

% windir% \ Microsoft.NET \ Framework64 \ v4.0.30319 \ aspnet_regiis.exe -i

В качестве альтернативы используйте командную строку из инструментов Visual Studio: C: \ ProgramData \ Microsoft \ Windows \ Пуск \ Меню \ Программы \ Microsoft Visual Studio 2012 \ Инструменты Visual Studio> VS2012 x86 Командная строка собственных инструментов

Версия может отличаться .. Надеюсь, это поможет.

дипан чикани
источник
1

У меня была точно такая же проблема, несмотря на то, что ASP.NET 4.5 отображается как установленный в разделе «Включение и выключение компонентов Windows». Я пробовал все до тех пор, пока окончательно не удалил ASP.NET 3.5 и 4.5 из раздела «Включение и выключение функций Windows», перезагрузил компьютер и снова установил их. Это решило проблему.

Мирос
источник
И теперь проблема вернулась, теперь даже меня мучает ASP.NET 4.0 ... Кто-нибудь знает, если это ошибка в VS2013?
Мирос
1

У меня тоже была эта проблема. Я попробовал вышеуказанные решения, но у меня не получилось.

Я установил обновление Visual Studio, и моя проблема была исправлена.

Скачайте обновление Visual Studio по ссылке ниже http://blogs.msdn.com/b/webdev/archive/2014/11/11/dialog-box-may-be-displayed-to-users-when-opening-projects -в-Microsoft-зрительно-студии после установки-на-Microsoft-нетто-каркасного 4-6.aspx

Спасибо!

user3833104
источник
1

Что-то, что вам нужно добавить через Программы и компоненты. Проверьте ссылку ниже, что решило мою проблему. Просто следуйте инструкциям ниже, и вы должны получить это.

Цитируется по ссылке:

В окне «Программы и компоненты» нажмите «Включить или отключить компоненты Windows» на левой панели.

Теперь прокрутите дерево вниз и найдите:

Информационные службы Интернета> Службы всемирной паутины> Функции разработки приложений ... и затем проверьте все необходимые функции, которые вам необходимы. Я выбрал .NET 3.5 и 4.6.

http://modelrail.otenko.com/electronics/asp-net-4-5-has-not-been-registered-on-the-web-server

teapeng
источник
1

ТЛ; др; Нажатие ОК - это обходной путь, после этого все будет работать нормально.

Я также получил это сообщение об ошибке.

Не удалось настроить веб- http: // localhost: xxxxx / для ASP.NET 4.5. Вы должны вручную настроить этот сайт для ASP.NET 4.5, чтобы сайт работал правильно. ASP.NET 4.0 не был зарегистрирован на веб-сервере. Вам необходимо вручную настроить веб-сервер для ASP.NET 4.0, чтобы ваш сайт работал правильно.

Среда: Windows 10, IIS8, VS 2012 Web.

Найдя эту страницу вместе с несколькими, казалось бы, инвазивными решениями, я прочитал опцию исправлений по адресу https://support.microsoft.com/en-us/help/3002339/unexpected-dialog-box-appears-when-you-open. -проекты в визуальной студии, как предлагается здесь.

Пожалуйста, избегайте слишком резких действий и обратите внимание на раздел этой страницы с пометкой «Временное решение», как показано ниже:

Временное решение


Чтобы обойти эту проблему, нажмите кнопку ОК, когда появится диалоговое окно после создания нового проекта или открытия существующего проекта веб-сайта или проекта Windows Azure. После этого проект работает, как и ожидалось .

Другими словами, нажмите ОК в диалоговом окне один раз, и сообщение исчезнет навсегда. Проект будет работать просто отлично.

Трэвис Дж
источник
0

У меня та же проблема.

И получил решение, включив ASP Net из Turn Windows feature on or offменю.

Оскар Даниэль Хутаюлу
источник
0

У меня такая же проблема. После долгого поиска я изменяю пул приложений на ASP.NET v4.xв диспетчере IIS.

vaheeds
источник
0

Для Windows 10 с ошибкой ниже : Не удалось настроить веб- http: // localhost: 64886 / для ASP.NET 4.5. Вы должны вручную настроить этот сайт для ASP.NET 4.5, чтобы сайт работал правильно. ASP.NET 4.0 не был зарегистрирован на веб-сервере. Вам необходимо вручную настроить веб-сервер для ASP.NET 4.0, чтобы ваш сайт работал правильно. Решение: https://blogs.msdn.microsoft.com/webdev/2014/11/11/dialog-box-may-be-displayed-to-users-when-opening-projects-in-microsoft-visual-studio- после установки-на-майкрософт-нетто-рамки-4-6 /

Бхарат Т
источник
0

У меня та же проблема при использовании Visual Studio 2012. Включение функции IIS просто не работает, потому что я все еще получил ошибку. Попробуйте метод, но не повезло.

Мое решение:

Сообщество
источник
0

Некоторые функции IIS, которые должны быть включены: Ссылка

DISM /Online /FeatureName:IIS-ApplicationDevelopment 
/FeatureName:IIS-ASPNET /FeatureName:IIS-ASP 
/FeatureName:IIS-NetFxExtensibility 
/FeatureName:IIS-ISAPIExtensions /FeatureName:IIS-ISAPIFilter

Затем исправьте сопоставления IIS для ASP.NET, запустите утилиту Aspnet_regiis.exe. Ссылка

MarwaAhmad
источник
0

эта ссылка объясняет причину проблемы и быстро решает проблему, просто обновляя visual studio и предоставляя ссылку для обновления

http://blogs.msdn.com/b/webdev/archive/2014/11/11/dialog-box-may-be-displayed-to-users-when-opening-projects-in-microsoft-visual-studio- после установки-на-Microsoft-нетто-каркасного 4-6.aspx

Джон Мэтью
источник
Это не дает ответа на вопрос. Чтобы критиковать или запросить разъяснения у автора, оставьте комментарий под своим постом.
Брюс
0

Попробуйте это. Перейдите в окно «Программы и компоненты» -> и нажмите «Включить или отключить функции Windows» на левой панели.

Теперь прокрутите дерево вниз и найдите:

Информационные службы Интернета Службы разработки приложений для всемирной паутины ... а затем проверьте все необходимые функции, которые вам необходимы. Я выбрал .NET 3.5 и 4.6.

и если это не сработает, тогда перейдите к разделу «Пусть он выполнит свою работу», и тогда вы должны вернуться к стране счастливого развития в VS, прежде чем узнаете об этом. Если нет, то это может быть ошибка в Visual Studio. Пожалуйста, проверьте следующие исправления для вашей версии VS: VS2010 , VS2012 или VS2013 . Это, безусловно, поможет вам.

Хема Шетти
источник
0

запустить Visual Studio с правами администратора и выполнить следующую команду «commandaspnet_regiis -i»

Mandar
источник