ASP.Net MVC 3.0 «Ошибка при выполнении дочернего запроса» на сервере разработки, но отлично работает на локальном компьютере

#asp.net-mvc #deployment

#asp.net-mvc #развертывание

Вопрос:

вот моя трассировка стека

 [Исключение NullReferenceException: ссылка на объект не установлена для экземпляра объекта.]
 HRORx.Controllers.LeftNavLinksController.LeftNavServices() в C:CommonPROHRORxControllersLeftNavLinksController.cs:30
 lambda_method(Closure, ControllerBase, Object[] )  78
 System.Web.Mvc.ReflectedActionDescriptor.Выполнить (ControllerContext ControllerContext, IDictionary`2 параметра)  263
 System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext ControllerContext, ActionDescriptor actionDescriptor, IDictionary`2 параметра)  38
 System.Web.Mvc.c__DisplayClass15.b__12()  128
 System.Web.Mvc.ControllerActionInvoker.Invokeactionmethod Filter(фильтр IActionFilter, предварительный текст ActionExecutingContext, продолжение функции `1)  826410
 System.Web.Mvc.ControllerActionInvoker.Invokeactionmethod с фильтрами (ControllerContext ControllerContext, IList`1 filters, ActionDescriptor actionDescriptor, IDictionary`2 parameters)  314
 System.Web.Mvc.ControllerActionInvoker.InvokeAction(ControllerContext ControllerContext, String ActionName)  825632
 System.Web.Mvc.Controller.ExecuteCore()  159
 System.Web.Mvc.ControllerBase.Выполнить (RequestContext RequestContext)  335
 System.Web.Mvc.c__DisplayClassb.b__5()  62
 System.Web.Mvc.Async.c__DisplayClass1.b__0()  20
 System.Web.Mvc.c__DisplayClasse.b__d()  54
 System.Web.Mvc.c__DisplayClass4.b__3()  15
 System.Web.Mvc.ServerExecuteHttpHandlerWrapper.Перенос (функция `1 функция)  41
 System.Web.HttpServerUtility.ExecuteInternal(обработчик IHttpHandler, средство записи текста, логическая форма сохранения, логическая setPreviousPage, виртуальный путь, виртуальный путь к файлу, строковый физический путь, ошибка исключения, строка queryStringOverride)  1443

 [HttpException (0x80004005): ошибка при выполнении дочернего запроса для обработчика 'System.Web.Mvc.HttpHandlerUtil  ServerExecuteHttpHandlerAsyncWrapper'.]
 System.Web.HttpServerUtility.ExecuteInternal(обработчик IHttpHandler, средство записи текста, логическая форма сохранения, логический setPreviousPage, виртуальный путь, виртуальный путь к файлу, строковый физический путь, ошибка исключения, строка queryStringOverride)  2515
 System.Web.HttpServerUtility.Выполнить (обработчик IHttpHandler, запись текста, логическая форма сохранения, логическая setPreviousPage)  242
 System.Web.HttpServerUtilityWrapper.Выполнить (обработчик IHttpHandler, запись текста, логическая форма сохранения)  94
 System.Web.Mvc.Html .Дочерние расширения.ActionHelper(HtmlHelper HtmlHelper, String ActionName, String controllerName, RouteValueDictionary routeValues, TextWriter TextWriter)  834
 System.Web.Mvc.Html .Дочерние расширения.Действие (HtmlHelper HtmlHelper, String ActionName, String controllerName, RouteValueDictionary routeValues)  123
 ASP._Страница_Просмотры_Общие__Левые ссылки_cshtml.Выполнить () в c:ServerWebrxViewsShared_LeftNavLinks.cshtml:2
 System.Web.WebPages.База веб-страниц.ExecutePageHierarchy()  280
 System.Web.Mvc.WebViewPage.ExecutePageHierarchy()  104
 System.Web.WebPages.База веб-страниц.Иерархия исполняемых страниц (WebPageContext PageContext, TextWriter writer, WebPageRenderingBase StartPage)  173
 System.Web.Mvc.Html.PartialExtensions.Частичный (HtmlHelper HtmlHelper, String partialViewName, объектная модель, ViewDataDictionary ViewData)  158
 ASP._Страница_Просмотры_Общий__Макет_cshtml.Выполнить () в c:ServerWebrxViewsShared_Layout.cshtml:54
 System.Web.WebPages.База веб-страниц.ExecutePageHierarchy()  280
 System.Web.Mvc.WebViewPage.ExecutePageHierarchy()  104
 System.Web.WebPages.База веб-страниц.Иерархия исполняемых страниц (WebPageContext PageContext, TextWriter writer, WebPageRenderingBase StartPage)  173
 System.Web.WebPages.База веб-страниц.Запись (HelperResult результат)  89
 System.Web.WebPages.WebPageBase.RenderSurrounding(String partialViewName, тело действия `1)  234
 System.Web.WebPages.База веб-страниц.PopContext()  222
 System.Web.Mvc.ViewResultBase.ExecuteResult (ControllerContext context context)  384
 System.Web.Mvc.c__DisplayClass1c.b__19()  33
 System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilter(фильтр IResultFilter, предварительный текст ResultExecutingContext, продолжение функции `1)  825604
 System.Web.Mvc.ControllerActionInvoker.InvokeActionResultWithFilters(ControllerContext ControllerContext, фильтры IList`1, ActionResult ActionResult)  265
 System.Web.Mvc.ControllerActionInvoker.InvokeAction(ControllerContext ControllerContext, String ActionName)  825632
 System.Web.Mvc.Controller.ExecuteCore()  159
 System.Web.Mvc.ControllerBase.Выполнить (RequestContext RequestContext)  335
 System.Web.Mvc.c__DisplayClassb.b__5()  62
 System.Web.Mvc.Async.c__DisplayClass1.b__0()  20
 System.Web.Mvc.c__DisplayClasse.b__d()  54
 System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Выполнить ()  469
 System.Web.HttpApplication.ExecuteStep(шаг IExecutionStep, логическое значение и выполняется синхронно)  375

Я могу без проблем создавать и запускать приложение на локальном компьютере
, но когда я развертываю его на сервере разработки, я получаю эту ошибку.
Любая помощь будет принята с благодарностью.
Спасибо

Ответ №1:

Трассировка стека жалуется на строку 30 из C:CommonPROHRORxControllersLeftNavLinksController.cs . Вы проверили все в этой строке? Возможно ли опубликовать то, что происходит на этой строке или вокруг нее?

Кроме того, используете ли вы LINQ в этом методе контроллера? Я столкнулся с аналогичной ошибкой, когда возвращал список, содержащий нулевые значения из таблицы. Данные отличались между моей локальной базой данных (не имели нулей) и производственной средой (в которой были нули).

Комментарии:

1. Да, я использую Linq, и логика в этот момент возвращает нулевые значения. Но как? на самом деле это сервер разработки, и база данных такая же, но все равно возвращает значение Null.

2. Благодаря hyperflow, ошибка заключалась в том, что моя строка подключения web.config указывает на другую базу данных на моем сервере разработки.