C# 使用堆栈跟踪(MVC)查找问题的起因

C# 使用堆栈跟踪(MVC)查找问题的起因,c#,asp.net-mvc,stack-trace,C#,Asp.net Mvc,Stack Trace,我有一个堆栈跟踪,通过我们的错误电子邮件系统通过电子邮件获得。然而,我在本地环境中重新创建错误时遇到问题,我知道我有一个空值错误。我知道我可以使用堆栈跟踪来缩小搜索范围以及如何重新创建错误,但我认为我读得不对 我认为问题在于我的客户控制器中的详细信息页面,但我可能错了。有人能帮我翻译一下吗?这样我就可以从哪里开始了 2017-03-20 13:13:44,158 FATAL MainProgram.Controllers.CustomerController+<>c__Display

我有一个堆栈跟踪,通过我们的错误电子邮件系统通过电子邮件获得。然而,我在本地环境中重新创建错误时遇到问题,我知道我有一个空值错误。我知道我可以使用堆栈跟踪来缩小搜索范围以及如何重新创建错误,但我认为我读得不对

我认为问题在于我的客户控制器中的详细信息页面,但我可能错了。有人能帮我翻译一下吗?这样我就可以从哪里开始了

2017-03-20 13:13:44,158 FATAL MainProgram.Controllers.CustomerController+<>c__DisplayClass8b - Exception propagated out of controller
System.InvalidOperationException: Nullable object must have a value.
   at MainProgram.Controllers.CustomerController.<>c__DisplayClass8b.<Details>b__50(Report i)
   at System.Linq.Enumerable.WhereSelectListIterator`2.MoveNext()
   at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)
   at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source)
   at MainProgram.Controllers.CustomerController.<>c__DisplayClass8b.<Details>b__45(IGrouping`2 k)
   at System.Linq.Enumerable.WhereSelectEnumerableIterator`2.MoveNext()
   at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)
   at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source)
   at MainProgram.Controllers.CustomerController.Details(String id)
   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.Async.AsyncControllerActionInvoker.<BeginInvokeSynchronousActionMethod>b__39(IAsyncResult asyncResult, ActionInvocation innerInvokeState)
   at System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResult`2.CallEndDelegate(IAsyncResult asyncResult)
   at System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.<InvokeActionMethodFilterAsynchronouslyRecursive>b__3d()
   at System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.<>c__DisplayClass46.<InvokeActionMethodFilterAsynchronouslyRecursive>b__3f()
   at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass33.<BeginInvokeActionMethodWithFilters>b__32(IAsyncResult asyncResult)
   at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass21.<>c__DisplayClass2b.<BeginInvokeAction>b__1c()
   at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass21.<BeginInvokeAction>b__1e(IAsyncResult asyncResult)
2017-03-20 13:13:44158致命的主程序控制器CustomerController+c__DisplayClass8b-从控制器传播的异常
System.InvalidOperationException:可为null的对象必须具有值。
在MainProgram.Controllers.CustomerController.c__显示Class8b.b__50(报告一)
位于System.Linq.Enumerable.WhereSelectListIterator`2.MoveNext()
位于System.Collections.Generic.List`1..ctor(IEnumerable`1集合)
at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source)
在MainProgram.Controllers.CustomerController.c__显示Class8b.b__45(i分组'2k)
在System.Linq.Enumerable.WhereSelectEnumerableInterator`2.MoveNext()中
位于System.Collections.Generic.List`1..ctor(IEnumerable`1集合)
at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source)
位于MainProgram.Controllers.CustomerController.Details(字符串id)
在lambda_方法中(闭包、控制器基、对象[])
位于System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext ControllerContext,IDictionary`2参数)
位于System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext ControllerContext,ActionDescriptor ActionDescriptor,IDictionary`2参数)
在System.Web.Mvc.Async.AsyncControllerActionInvoker.b_u39(IAsyncResult asyncResult,ActionInvokeInnerInvokeState)
位于System.Web.Mvc.Async.AsyncResultRapper.WrappedAsyncResult`2.CallEndDelegate(IAsyncResult asyncResult)
在System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.b__3d()中
在System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.c__DisplayClass46.b__3f()中
在System.Web.Mvc.Async.AsyncControllerActionInvoker.c__DisplayClass33.b_u 32(IAsyncResult asyncResult)
在System.Web.Mvc.Async.AsyncControllerActionInvoker.c_uuDisplayClass21.c_uuDisplayClass2B.b_u1C()中
在System.Web.Mvc.Async.AsyncControllerActionInvoker.c__DisplayClass21.b__1e(IAsyncResult asyncResult)

您是否有任何Linq表达式正在对可空对象执行操作?在引用该值之前,请确保检查这些属性是否不为null(即HasValue)。部署*.pdb将有助于将来,因为此时stacktraces将包含行号。