Какова эта ошибка в проекте ASP.NET MVC 3 RTM?
Я создаю новый проект RTM MVC 3 для проекта и заменяю ссылки для
используя ASP.NET MVC 3 Исходный код
но когда я снова запускаю проект, получите это исключение:
[А] System.Web.WebPages.Razor.Configuration.HostSection нельзя отбрасывать [B] System.Web.WebPages.Razor.Configuration.HostSection. Тип А берется из "System.Web.WebPages.Razor, Версия = 1.0.0.0, Культура = нейтральная, PublicKeyToken = 31bf3856ad364e35 'в контекст" По умолчанию "в месте" C:\Windows\Microsoft.Net\сборка\GAC_MSIL\System.Web.WebPages.Razor\v4.0_1.0.0.0__31bf3856ad364e35\System.Web.WebPages.Razor.dll. Тип B берется из "System.Web.WebPages.Razor, Версия = 1.0.0.0, Культура = нейтральная, PublicKeyToken = null 'в контексте" По умолчанию "в месте" C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Файлы\корень\2505c7ee\369315c5\сборка\DL3\f7bae428\d03eeed8_85bbcb01\System.Web.WebPages.Razor.DLL".
Описание: Необработанное исключение произошли во время выполнения текущий веб-запрос. Пожалуйста, просмотрите трассировки стека для получения дополнительной информации о ошибка и где она возникла в код.
Ошибка источника:
Line 106: internal static RazorWebSectionGroup GetRazorSection(string virtualPath) {
Line 107: // Get the individual sections (we can only use GetSection in medium trust) and then reconstruct the section group
Line 108: return new RazorWebSectionGroup() {
Line 109: Host = (HostSection)WebConfigurationManager.GetSection(HostSection.SectionName, virtualPath),
Line 110: Pages = (RazorPagesSection)WebConfigurationManager.GetSection(RazorPagesSection.SectionName, virtualPath)
Исходный файл: E:\Гринтур\веб-страниц\SRC\System.Web.WebPages.Razor\WebRazorHostFactory.cs Линия: 108
Ответы
Ответ 1
Эта ошибка означает, что часть вашего приложения скомпилирована с использованием вашей собственной копии исходного кода в качестве ссылки, а во время выполнения ее нахождения ссылочных сборок в GAC. Убедитесь, что вы удалите все ссылки на GACed версии сборки MVC 3. Это включает в себя несколько вещей в ваших файлах web.config, которые используют этот токен открытого ключа: 31bf3856ad364e35.
Ответ 2
Я просто столкнулся с одной и той же проблемой при обновлении моего приложения, проблема была в файле web.config, расположенном в каталоге представлений, я слепо скопировал это из старого приложения (мое плохое).
Мое решение, создайте новое приложение MVC 4 и скопируйте файл web.config из каталога представлений в ваше приложение, у которого возникла проблема.
Надеюсь, что это поможет
Ответ 3
Хотя приведенная выше тема была полезна. Я не мог заставить работу работать, пока не создал приложение 'dummy' 'basic' MVC 4, а затем сравнил web.configs, чтобы найти какие-либо изменения.
Ответ 4
Я исправил это не путем удаления всех ссылок на сборки с открытым ключом 31bf3856ad364e35, так как это охватывает множество нерелевантных сборок.
Вместо этого он должен быть исправлен путем обновления всех ссылок конфигурации
- System.Web.Mvc to 4
- System.Web.WebPages to 2
- System.Web.WebPages.Razor to 2
Обязательно обновите все web.configs, в том числе те, что указаны в каталогах View.