在我的應用程序中,我有一個顯示記錄列表的頁面,每條記錄都有一個鏈接點擊該記錄的更多細節。它轉到另一個控制器。 讓我講一個序列。從'ToDoListSelect'控制器,它會轉到'ToDoList',點擊ToDoList鏈接後會轉到'Info'控制器。在我的開發機器上,一切工作正常,數據庫與服務器上的相同。 現在,我把軟件包放在服務器上,如果頁面上的記錄少於500個左右,它就可以正常工作。如果來自ToDoList的記錄更多,則它不會轉到Info,但會拋出異常,並且我看到它將轉到ToDoListSelect,這很奇怪。我不知道從哪裏開始尋找問題。有什麼建議麼?任何細節需要讓我知道。大型記錄ASP.Net MVC控制器路由
這裏是我的應用程序的路徑:
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute("Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
);
}
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
RegisterGlobalFilters(GlobalFilters.Filters);
RegisterRoutes(RouteTable.Routes);
}
拋出的錯誤是:在 '/' 應用
服務器錯誤。 由於對象的當前狀態,操作無效。 描述:執行當前Web請求期間發生未處理的異常。請查看堆棧跟蹤以獲取有關此錯誤的更多信息,查看並確定錯誤源自代碼的位置。
異常詳細信息:System.InvalidOperationException:由於對象的當前狀態,操作無效。
源錯誤:
在當前的Web請求生成了未處理的異常的執行。關於異常的來源和位置的信息可以使用下面的異常堆棧跟蹤來標識。
[InvalidOperationException: Der Vorgang ist aufgrund des aktuellen Zustands des Objekts ungültig.]
System.Web.HttpRequest.FillInFormCollection() +11485999
System.Web.HttpRequest.get_Form() +157
Microsoft.Web.Infrastructure.DynamicValidationHelper.<>c__DisplayClass12.<ReplaceCollection>b__e() +63
Microsoft.Web.Infrastructure.DynamicValidationHelper.<>c__DisplayClass12.<ReplaceCollection>b__11() +20
Microsoft.Web.Infrastructure.DynamicValidationHelper.DeferredCountArrayList.get_Count() +20
System.Web.HttpRequest.ValidateNameValueCollection(NameValueCollection nvc, RequestValidationSource requestCollection) +34
System.Web.HttpRequest.get_Form() +212
System.Web.Mvc.FormValueProvider..ctor(ControllerContext controllerContext, IUnvalidatedRequestValues unvalidatedValues) +55
System.Web.Mvc.FormValueProviderFactory.GetValueProvider(ControllerContext controllerContext) +61
System.Web.Mvc.<>c__DisplayClassc.<GetValueProvider>b__7(ValueProviderFactory factory) +28
System.Linq.WhereSelectEnumerableIterator`2.MoveNext() +238
System.Linq.WhereSelectEnumerableIterator`2.MoveNext() +148
System.Collections.Generic.List`1..ctor(IEnumerable`1 collection) +472
System.Linq.Enumerable.ToList(IEnumerable`1 source) +80
System.Web.Mvc.ValueProviderFactoryCollection.GetValueProvider(ControllerContext controllerContext) +347
System.Web.Mvc.ControllerBase.get_ValueProvider() +46
System.Web.Mvc.ControllerActionInvoker.GetParameterValue(ControllerContext controllerContext, ParameterDescriptor parameterDescriptor) +80
System.Web.Mvc.ControllerActionInvoker.GetParameterValues(ControllerContext controllerContext, ActionDescriptor actionDescriptor) +153
System.Web.Mvc.ControllerActionInvoker.InvokeAction(ControllerContext controllerContext, String actionName) +691
System.Web.Mvc.Controller.ExecuteCore() +162
System.Web.Mvc.ControllerBase.Execute(RequestContext requestContext) +305
System.Web.Mvc.<>c__DisplayClassb.<BeginProcessRequest>b__5() +62
System.Web.Mvc.Async.<>c__DisplayClass1.<MakeVoidDelegate>b__0() +20
System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +469
System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +375
你可以請你把你的路線和任何可能已被拋出或記錄的錯誤消息。 – 2012-07-17 13:35:14