Последовательность не содержит элементов - PullRequest
1 голос
/ 07 января 2020

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

 Server Error in '/' Application.

Последовательность не содержит элементов. Описание: Произошло необработанное исключение во время выполнения текущего веб-запроса. Просмотрите трассировку стека для получения дополнительной информации об ошибке и о том, где она возникла в коде.

Сведения об исключении: System.InvalidOperationException: последовательность не содержит элементов

Ошибка источника:

Line 121:                                    </tr>
Line 122:                                </thead>
Line 123:  ->The error is here!<--       @foreach (var item in Model.UserAbsences.OrderByDescending(x => x.UserAbsenceActions.Max(y => y.CreatedAt)).Where(c => c.Status.Equals(1) || c.Status.Equals(2)))
Line 124:                                {
Line 125:                                    <tbody>

Source File: Views\Home\Index.cshtml    Line: 123

Stack Trace:


[InvalidOperationException: Sequence contains no elements]
   System.Linq.Enumerable.Max(IEnumerable`1 source) +324
   System.Linq.Enumerable.Max(IEnumerable`1 source, Func`2 selector) +60
   ASP.<>c.<Execute>b__3_6(UserAbsenceVm x) in \Views\Home\Index.cshtml:123
   System.Linq.EnumerableSorter`2.ComputeKeys(TElement[] elements, Int32 count) +81
   System.Linq.EnumerableSorter`1.Sort(TElement[] elements, Int32 count) +21
   System.Linq.<GetEnumerator>d__1.MoveNext() +232
   System.Linq.WhereEnumerableIterator`1.MoveNext() +174
   ASP._Page_Views_Home_Index_cshtml.Execute() in Views\Home\Index.cshtml:123
   System.Web.WebPages.WebPageBase.ExecutePageHierarchy() +197
   System.Web.Mvc.WebViewPage.ExecutePageHierarchy() +105
   System.Web.WebPages.StartPage.RunPage() +17
   System.Web.WebPages.StartPage.ExecutePageHierarchy() +73
   System.Web.WebPages.WebPageBase.ExecutePageHierarchy(WebPageContext pageContext, TextWriter writer, WebPageRenderingBase startPage) +78
   System.Web.Mvc.RazorView.RenderView(ViewContext viewContext, TextWriter writer, Object instance) +235
   System.Web.Mvc.BuildManagerCompiledView.Render(ViewContext viewContext, TextWriter writer) +107
   System.Web.Mvc.ViewResultBase.ExecuteResult(ControllerContext context) +291
   System.Web.Mvc.ControllerActionInvoker.InvokeActionResult(ControllerContext controllerContext, ActionResult actionResult) +13
   System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult) +56
   System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult) +420
   System.Web.Mvc.ControllerActionInvoker.InvokeActionResultWithFilters(ControllerContext controllerContext, IList`1 filters, ActionResult actionResult) +52
   System.Web.Mvc.Async.<>c__DisplayClass3_6.<BeginInvokeAction>b__4() +198
   System.Web.Mvc.Async.<>c__DisplayClass3_1.<BeginInvokeAction>b__1(IAsyncResult asyncResult) +100
   System.Web.Mvc.Async.WrappedAsyncResult`1.CallEndDelegate(IAsyncResult asyncResult) +10
   System.Web.Mvc.Async.WrappedAsyncResultBase`1.End() +49
   System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeAction(IAsyncResult asyncResult) +27
   System.Web.Mvc.<>c.<BeginExecuteCore>b__152_1(IAsyncResult asyncResult, ExecuteCoreState innerState) +11
   System.Web.Mvc.Async.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) +29
   System.Web.Mvc.Async.WrappedAsyncResultBase`1.End() +49
   System.Web.Mvc.Controller.EndExecuteCore(IAsyncResult asyncResult) +45
   System.Web.Mvc.<>c.<BeginExecute>b__151_2(IAsyncResult asyncResult, Controller controller) +13
   System.Web.Mvc.Async.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) +22
   System.Web.Mvc.Async.WrappedAsyncResultBase`1.End() +49
   System.Web.Mvc.Controller.EndExecute(IAsyncResult asyncResult) +26
   System.Web.Mvc.Controller.System.Web.Mvc.Async.IAsyncController.EndExecute(IAsyncResult asyncResult) +10
   System.Web.Mvc.<>c.<BeginProcessRequest>b__20_1(IAsyncResult asyncResult, ProcessRequestState innerState) +28
   System.Web.Mvc.Async.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) +29
   System.Web.Mvc.Async.WrappedAsyncResultBase`1.End() +49
   System.Web.Mvc.MvcHandler.EndProcessRequest(IAsyncResult asyncResult) +28
   System.Web.Mvc.MvcHandler.System.Web.IHttpAsyncHandler.EndProcessRequest(IAsyncResult result) +9
   System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +9849993
   System.Web.HttpApplication.ExecuteStepImpl(IExecutionStep step) +50
   System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +163

Ответы [ 2 ]

1 голос
/ 07 января 2020

Вы можете обработать null, как показано ниже.

@if (Model != null)
{
  //Your original code here as in line number 123.
}
0 голосов
/ 07 января 2020

Можете ли вы обернуть для l oop, чтобы проверить, что вы хотите, чтобы l oop на самом деле существует. Я предполагаю Model != null здесь:

@{
    if(Model.UserAbsences.Any()) {
        foreach (var item in Model.UserAbsences.OrderByDescending(x => x.UserAbsenceActions.Max(y => y.CreatedAt)).Where(c => c.Status.Equals(1) || c.Status.Equals(2))) {
             //...do stuff...
        }
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...