1

MVCでアプリケーションを開発しています。すべてのブラウザで、デバッグ中はすべてがうまく機能します。問題は、サーバーにアプリケーションをインストールすると、IE8 でのみ次の例外が表示されるため、それを機能させることができないことです。

Object reference not set to an instance of an object.
   at Eco.Administration.Web.UI.Controllers.CatalogController.ProcesarListaFactoresPorFiltro(String Rama, String TipoCredito, String Periodo, String Ubicacion)
   at Eco.Administration.Web.UI.Controllers.CatalogController.EcoEditaXML(String Ram, String Tip, String Perio, String ubica, Int32 Id, String mensaje)
   at *lambda_method(Closure ,* ControllerBase , Object[] )
   at System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary`2 parameters)
   at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary`2 parameters)
   at System.Web.Mvc.ControllerActionInvoker.<>c__DisplayClass15.<InvokeActionMethodWithFilters>b__12()
   at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodFilter(IActionFilter filter, ActionExecutingContext preContext, Func`1 continuation)
   at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodWithFilters(ControllerContext controllerContext, IList`1 filters, ActionDescriptor actionDescriptor, IDictionary`2 parameters)
   at System.Web.Mvc.ControllerActionInvoker.InvokeAction(ControllerContext controllerContext, String actionName)

コントローラー (ラムダ関数) で行を削除すると、正常に動作することに気付きました。

ラムダ関数に関連する IE8 に問題があるかどうかを知っている人はいますか? IIS の構成ミスでしょうか?

4

1 に答える 1

1

これは、同じ問題を調査しているときにこの質問に出くわした人向けです。私はちょうどそれを自分で経験しました。私のアプリで永遠に機能している次のコード行があります。

STemplate stemplate = db.STemplates.Include(t=>t.STemplateTabs).Where(t=>t.Id == id).FirstOrDefault();

突然、次のような例外が発生し始めました。

System.NullReferenceException: オブジェクト参照がオブジェクトのインスタンスに設定されていません。WebUI.Areas.Admin.Controllers.STemplateController.Details(Int32 id) で lambda_method(Closure , ControllerBase , Object[] )
で System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary`2 parameters) など...

私は無邪気なラインを見つめ続け、何が壊れているのかを理解しようとしました. 気まぐれに SQL Server Profiler を起動したところ、呼び出しが実際に行われることがわかりました。問題は、クエリのすぐ下の行にありました。私の場合、web.configにあるはずの値でCookieを設定していましたが、そこになかったため、null参照例外が発生しました。サーバー上のDLLをすばやく置き換えて何かをすばやく修正するのではなく、毎回適切な展開を行うもう1つの理由.

幸運を!

于 2013-05-17T19:12:23.867 に答える