2014-08-29 5 views
0

Что вызывает эту ошибку в приложении WebMvc?Ошибка веб-приложения MVC при запуске

Attempt by method 'System.Web.Mvc.VirtualPathProviderViewEngine.GetPath(System.Web.Mvc.ControllerContext, System.String[], System.String[], System.String, System.String, System.String, System.String, Boolean, System.String[] ByRef)' 

для доступа к методу 'System.Web.Mvc.VirtualPathProviderViewEngine.get_DisplayModeProvider()' не удалось.

Ошибка сервера в приложении «/».

Попытка с помощью метода 'System.Web.Mvc.VirtualPathProviderViewEngine.GetPath (System.Web.Mvc.ControllerContext, System.String [], System.String [], System.String, System.String, System.String, System.String, Boolean, System.String [] ByRef) 'для доступа к методу' System.Web.Mvc.VirtualPathProviderViewEngine.get_DisplayModeProvider() 'не удалось. Описание: Необработанное исключение произошло во время выполнения текущего веб-запроса. Просмотрите трассировку стека для получения дополнительной информации об ошибке и ее возникновении в коде.

Сведения об исключении: System.MethodAccessException: попытка с помощью метода 'System.Web.Mvc.VirtualPathProviderViewEngine.GetPath (System.Web.Mvc.ControllerContext, System.String [], System.String [], System.String, System .String, System.String, System.String, Boolean, System.String [] ByRef) 'для доступа к методу' System.Web.Mvc.VirtualPathProviderViewEngine.get_DisplayModeProvider() 'не удалось.

Источник ошибки:

Необработанное исключение при выполнении текущего веб-запроса. Информация о происхождении и местоположении исключения может быть идентифицирована с использованием следа стека исключений ниже.

Трассировка стека:

[MethodAccessException: Покушение методом «System.Web.Mvc.VirtualPathProviderViewEngine.GetPath (System.Web.Mvc.ControllerContext, System.String [], System.String [], система. String, System.String, System.String, System.String, Boolean, System.String [] ByRef) 'для доступа к методу' System.Web.Mvc.VirtualPathProviderViewEngine.get_DisplayModeProvider() 'failed.] System.Web.Mvc. VirtualPathProviderViewEngine.GetPath (ControllerContext controllerContext, String [] location, String [] areaLocations, String locationsPropertyName, String name, String controllerName, String cacheKeyPrefix, Boolean useCache, String [] & searchLocations) +692 System.Web.Mvc.V irtualPathProviderViewEngine.FindView (ControllerContext controllerContext, String viewName, String masterName, Boolean useCache) +315 System.Web.Mvc. <> c__DisplayClassc.b__a (IViewEngine е) +68 System.Web.Mvc.ViewEngineCollection.Find (Func 2 lookup, Boolean trackSearchedPaths) +182 System.Web.Mvc.ViewEngineCollection.Find(Func 2 cacheLocator, Func 2 locator) +67 System.Web.Mvc.ViewEngineCollection.FindView(ControllerContext controllerContext, String viewName, String masterName) +329 System.Web.Mvc.ViewResult.FindView(ControllerContext context) +135 System.Web.Mvc.ViewResultBase.ExecuteResult(ControllerContext context) +230 System.Web.Mvc.ControllerActionInvoker.InvokeActionResult(ControllerContext controllerContext, ActionResult actionResult) +39 System.Web.Mvc.<>c__DisplayClass1a.<InvokeActionResultWithFilters>b__17() +74 System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilter(IResultFilter filter, ResultExecutingContext preContext, Func 1 продолжение) +388 System.Web.Mvc. <> c__DisplayClass1c.b__19() +72 System.Web.Mvc.ControllerActionInvoker.InvokeActionResultWithFilters (ControllerContext controllerContext, IList 1 filters, ActionResult actionResult) +303 System.Web.Mvc.Async.<>c__DisplayClass2a.<BeginInvokeAction>b__20() +155 System.Web.Mvc.Async.<>c__DisplayClass25.<BeginInvokeAction>b__22(IAsyncResult asyncResult) +184 System.Web.Mvc.Async.WrappedAsyncResult 1.End() +136 System.Web.Mvc.Async.AsyncResultWrapper.End (IAsyncResult AsyncResult, метка объекта): +56 System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeAction (IAsyncResult AsyncResult) + 40 System.Web.Mvc. <> c__DisplayClass1d.b__18 (IAsyncResult AsyncResult) + 40 System.Web.Mvc.Async. <> c__DisplayClass4.b__3 (IAsyncResult ар) +47 System.Web.Mvc.Async.WrappedAsyncResult 1.End() +151 System.Web.Mvc.Async.AsyncResultWrapper.End(IAsyncResult asyncResult, Object tag) +59 System.Web.Mvc.Async.AsyncResultWrapper.End(IAsyncResult asyncResult, Object tag) +40 System.Web.Mvc.Controller.EndExecuteCore(IAsyncResult asyncResult) +44 System.Web.Mvc.Async.<>c__DisplayClass4.<MakeVoidDelegate>b__3(IAsyncResult ar) +47 System.Web.Mvc.Async.WrappedAsyncResult 1.End() +151 System.Web.Mvc.Async.AsyncResultWrapper.End (IAsyncResult AsyncResult, метка объекта) +59 System.Web.Mvc.Async.AsyncResultWrapper.End (IAsyncResult asyncResult, Object tag) +40 System.Web.Mvc.Controller.EndExecute (IAsyncResult asyncResult) +39 System.Web.Mvc.Controller.System.Web.Mvc.Async.IAsyncController.EndExecute (IAsyncResult asyncResult) +39 System.Web.Mvc. <> c__DisplayClass8.b__3 (IAsyncResult asyncResult) +45 System.Web.Mvc.Async. <> c__DisplayClass4.b__3 (IAsyncResult ar) +47 System.Web.Mvc.Async.WrappedAsyncResult`1.End() +151 System.Web.Mvc.Async.AsyncResultWrapper.End (IAsyncResult asyncResult, Object tag) +59 System.Web.Mvc.Async.AsyncResultWrapper.End (IAsyncResult AsyncResult, метка объекта) + 40 System.Web.Mvc.MvcHandler.EndProcessRequest (IAsyncResult AsyncResult) + 40 System.Web.Mvc.MvcHandler.System.Web. IHttpAsyncHandler.EndProcessRequest (IAsyncResult результат) +38 System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +969016 System.Web.HttpApplication.ExecuteStep (IExecutionStep шаг, булева & completedSynchronously) +155

Информация о версии: Microsoft .NET Framework Версия: 4.0.30319; ASP.NET версии: 4.0.30319.34009

+0

Ошибка при запуске. Приложение компилирует, но не может открыть какие-либо страницы. Это сайт, который я обновляю от VS2010 до VS2013. Я обновил некоторые библиотеки MVC. –

ответ

1

What causes this error on a WebMvc application?

Хм ... Интересно ...

I updated some of the MVC libraries.

Ну, там вы идете. То, что вы в основном сделали, вошло в кабинет врачей и сказал: «Доктор, я не могу понять, почему у меня эта страшная боль в моей руке», на что врач отвечает: «Ты что-нибудь сделал для этого?» и вы отвечаете: «Я только заколол его ножом 143 раза .....»

Прежде всего, вы не можете просто обновлять библиотеки. Обновление MVC имеет процесс, который вы должны пройти.

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

Во-вторых, даже если вы собираетесь обновить библиотеки, вы не можете просто обновить «некоторые» из них. Эти библиотеки зависят друг от друга, а некоторые из них без других могут вызвать множество проблем.

Существует много настроек, которые необходимо обновить, а также синхронизация различных DLL. Не говоря уже о том, что переход от VS2010 до 2013 означает удаление пакетов, предназначенных для установки .net 4 и установки версий 4.5 ...

+0

У меня есть эта проблема, и я не делал таких обновлений ... – user1040975

+0

@ user1040975 - Ну, очевидно, что делать обновления - это не единственный способ получить такую ​​ошибку, как это ... в основном это неправильная конфигурация. –

+0

Да, я пришел, когда кто-то еще совершил веб-конфигурацию, и я обновил. По какой-то причине после обновления и даже после того, как я попытался вернуться, мой проект все еще пытался использовать «сломанный» web.config. – user1040975

0

В вашем проекте щелкните правой кнопкой мыши и выберите «Управление пакетами NuGet» в открывшемся окне с правой стороны, выберите опцию «Интернет» и появится «Microsoft ASP.NET MVC». Это решило мою проблему.

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