Ответ 1
Для меня эта ошибка возникла из-за того, что у меня не было установки Microsoft.AspNet.WebHelpers после обновления с MVC 4 до MVC 5. Это было исправлено установкой пакета NuGet
Install-Package -Id Microsoft.AspNet.WebHelpers
Обновление: то же самое для mvc 4 до mvc 5.
Я начал новый проект mvc 4 и перенес в него проект mvc 3 (контроллеры/модели/скрипты и т.д.). Пока все компилируется, я получаю следующую ошибку:
Попытка прозрачным методом безопасности "WebMatrix.WebData.PreApplicationStartCode.Start()" для доступа к критическому критическому критическиму "System.Web.WebPages.Razor.WebPageRazorHost.AddGlobalImport(System.String)" не удалось.
Я не могу найти что-либо в Интернете с этой ошибкой. Ошибка перед запуском приложения.
Я попытался переустановить все сборки с помощью nuget, поставив "чистый" web.config безрезультатно.
Кто-нибудь имел эту проблему раньше?
Для меня эта ошибка возникла из-за того, что у меня не было установки Microsoft.AspNet.WebHelpers после обновления с MVC 4 до MVC 5. Это было исправлено установкой пакета NuGet
Install-Package -Id Microsoft.AspNet.WebHelpers
Если вы получаете сообщение об ошибке
Попытка прозрачным методом безопасности "WebMatrix.WebData.PreApplicationStartCode.Start() для доступа к критическому критическому методу" System.Web.WebPages.Razor.WebPageRazorHost.AddGlobalImport(System.String) не удалось.
Чтобы исправить этот пакет, установите его с помощью диспетчера пакетов NuGet.
Install-Package Microsoft.AspNet.WebHelpers
После этого, возможно, вы получите еще одну ошибку
Не удается загрузить сборку WebMatrix.Data версии 3.0.0.0
чтобы исправить этот пакет установки с помощью диспетчера пакетов NuGet.
Install-Package Microsoft.AspNet.WebPages.Data
Для тех, кто приземляется здесь, кто пытается обновиться с MVC 4 до MVC5, я смог решить эту проблему, выполнив инструкции http://www.asp.net/mvc/tutorials/mvc-5/how-to-upgrade-an-aspnet-mvc-4-and-web-api-project-to-aspnet-mvc-5-and-web-api-2.
Мне также пришлось установить пакет "Microsoft.AspNet.WebApi.WebHost" из nuget. Но это так.
О, и мне пришлось создать это приложение: <add key="owin:AutomaticAppStartup" value="false" />
:)
Я попробовал все вышеперечисленные решения, и он все равно не сработает, пока я не обнаружил, что элемент компиляции web.config ссылался на версию 2.0.0.0 WebMatrix.Data и WebMatrix.WebData. Изменение версии этих записей в файле web.config до 3.0.0.0 помогло мне.
Я занимаюсь подобной проблемой при обновлении mvc 4
до mvc 5
:
Попытка прозрачным методом безопасности "System.Web.WebPages.Administration.SiteAdmin.RegisterAdminModule()" для доступа к критическому критическому методу "System.Web.WebPages.ApplicationPart..ctor(System.Reflection.Assembly, System.String) ' не смогли.
Флажок удаления лишних файлов в диалоговом окне публикации разрешил его для меня.
Переустановка Microsoft.AspNet.WebHelpers
работает для меня
Update-Package –reinstall Microsoft.AspNet.WebHelpers
Просто еще одно предложение... Это было вызвано для меня некоторой старой dll из проекта MVC 3 после обновления до MVC 5 в папке bin на сервере развертывания. Несмотря на то, что эти dll больше не использовались кодовой базой, они, похоже, вызывают проблему. Очистили все и снова развернули, и все было в порядке.
Вы также можете получить:
Не удалось загрузить файл или сборку "WebMatrix.Data, Version = 3.0.0.0, Культура = нейтральная, PublicKeyToken = 31bf3856ad364e35 'или одна из ее зависимостей. Установленное определение манифеста сборки не сопоставить ссылку на сборку. (Исключение из HRESULT: 0x80131040)
Это перемещено в этот пакет
Install-Package Microsoft.AspNet.WebPages.Data
Вероятно, вы должны сделать чистую сборку, прежде чем пытаться ответить на этот вопрос и после обновления пакетов
Вот как я исправил эту проблему:
Откройте консоль диспетчера пакетов nuget и установите следующие пакеты nuget:
Install-Package WebMatrix.Data
Install-Package Microsoft.AspNet.WebHelpers
Update-Package
Очистите решение, перестройте, и мое веб-приложение asp.net начнет работать!
Удаление всех файлов из бункера, а затем перестройка решения работала для меня.
Для меня эта ошибка была вызвана тем, что DotNetOpenAuth не совместим с MVC5 после обновления с MVC4 до MVC5. Удаление Microsoft.Web.WebPages.OAuth устраняло проблему.
Я удалил его из своих ссылок. Затем запустите его в консоли диспетчера пакетов
Install-Package WebMatrix.Data
Наконец, добавьте сборку WebMatrix.WebData к ссылкам и перестройте project.It работает для меня. Я надеюсь, что она также решит вашу проблему.
Я установил webapi с помощью пакета справки nuget. Этот пакет заменил большинство бинарных файлов asp.net mvc 4 бета-версиями, которые не работали вместе с остальной частью проекта. Исправлено восстановление оригинальной dll mvc 4, и все было хорошо.
У меня была такая же проблема, мне пришлось обновить MVC Future (Microsoft.AspNet.Mvc.Futures)
Install-Package Microsoft.AspNet.Mvc.Futures
Для меня это ошибки решены путем добавления
<system.web>
<trust level="Full">
</system.web>
в web.config