简体   繁体   English

asp.net mvc自定义模型活页夹

[英]asp.net mvc custom model binder

My custom model binder which has been working perfectly has starting giving me errors 我的自定义模型活页夹一直运行良好,开始出现错误

details below 详情如下

An item with the same key has already been added. 具有相同键的项目已被添加。 Description: An unhandled exception occurred during the execution of the current web request. 说明:执行当前Web请求期间发生未处理的异常。 Please review the stack trace for more information about the error and where it originated in the code. 请查看堆栈跟踪,以获取有关错误及其在代码中起源的更多信息。

Exception Details: System.ArgumentException: An item with the same key has already been added. 异常详细信息:System.ArgumentException:具有相同键的项已添加。

Source Error: 源错误:

Line 31: { Line 32: string key = bindingContext.ModelName; 第31行:{第32行:字符串键= bindingContext.ModelName; Line 33: var doc = base.BindModel(controllerContext, bindingContext) as Document; 第33行:var doc = base.BindModel(controllerContext,bindingContext)as Document; Line 34: Line 35: // DoBasicValidation(bindingContext, doc); 第34行:第35行:// DoBasicValidation(bindingContext,doc);

Source File: C:\\Users\\Bich Vu\\Documents\\Visual Studio 2008\\Projects\\PitchPortal\\PitchPortal.Web\\Binders\\DocumentModelBinder.cs Line: 33 源文件:C:\\ Users \\ Bich Vu \\ Documents \\ Visual Studio 2008 \\ Projects \\ PitchPortal \\ PitchPortal.Web \\ Binders \\ DocumentModelBinder.cs行:33

Stack Trace: 堆栈跟踪:

[ArgumentException: An item with the same key has already been added.] System.ThrowHelper.ThrowArgumentException(ExceptionResource resource) +51 System.Collections.Generic.Dictionary2.Insert(TKey key, TValue value, Boolean add) +7462172 System.Linq.Enumerable.ToDictionary(IEnumerable1 source, Func2 keySelector, Func2 elementSelector, IEqualityComparer1 comparer) +270 System.Linq.Enumerable.ToDictionary(IEnumerable1 source, Func2 keySelector, IEqualityComparer1 comparer) +102 System.Web.Mvc.ModelBindingContext.get_PropertyMetadata() +157 System.Web.Mvc.DefaultModelBinder.BindProperty(ControllerContext controllerContext, ModelBindingContext bindingContext, PropertyDescriptor propertyDescriptor) +158 System.Web.Mvc.DefaultModelBinder.BindProperties(ControllerContext controllerContext, ModelBindingContext bindingContext) +90 System.Web.Mvc.DefaultModelBinder.BindComplexElementalModel(ControllerContext controllerContext, ModelBindingContext bindingContext, Object model) +50 System.Web.Mvc.D [ArgumentException:已添加具有相同键的项。] System.ThrowHelper.ThrowArgumentException(Exception资源资源)+51 System.Collections.Generic.Dictionary2.Insert(TKey键,TValue值,布尔值添加)+7462172 System.Linq .Enumerable.ToDictionary(IEnumerable1源,Func2 keySelector,Func2 elementSelector,IEqualityComparer1比较器)+270 System.Linq.Enumerable.ToDictionary(IEnumerable1源,Func2 keySelector,IEqualityComparer1比较器)+102 System.Web.Mvc(Property)第157章(158) ControllerContext controllerContext,ModelBindingContext bindingContext,Object model)+50 System.Web.Mvc.D efaultModelBinder.BindComplexModel(ControllerContext controllerContext, ModelBindingContext bindingContext) +1048 System.Web.Mvc.DefaultModelBinder.BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext) +280 PitchPortal.Web.Binders.documentModelBinder.BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext) in C:\\Users\\Bich Vu\\Documents\\Visual Studio 2008\\Projects\\PitchPortal\\PitchPortal.Web\\Binders\\DocumentModelBinder.cs:33 System.Web.Mvc.ControllerActionInvoker.GetParameterValue(ControllerContext controllerContext, ParameterDescriptor parameterDescriptor) +257 System.Web.Mvc.ControllerActionInvoker.GetParameterValues(ControllerContext controllerContext, ActionDescriptor actionDescriptor) +109 System.Web.Mvc.ControllerActionInvoker.InvokeAction(ControllerContext controllerContext, String actionName) +314 System.Web.Mvc.Controller.ExecuteCore() +105 System.Web.Mvc.ControllerBase.Execute(RequestContext requestContext) +39 System.Web. efaultModelBinder.BindComplexModel(ControllerContext controllerContext,ModelBindingContext bindingContext)+1048 System:Web.Mvc.DefaultModelBinder.BindModel(ControllerContext controllerContext,ModelBindingContext bindingContext)+280 PitchPortal.Web.Binders.documentModelBinder.BindModel(ControllerContext controllerContext,ModelBindingContext bindingContext)在C:\\ Users \\ Bich Vu \\ Documents \\ Visual Studio 2008 \\ Projects \\ PitchPortal \\ PitchPortal.Web \\ Binders \\ DocumentModelBinder.cs:33 System.Web.Mvc.ControllerActionInvoker.GetParameterValue(ControllerContext controllerContext,ParameterDescriptor parameterDescriptor)+257 System.Web.Mvc。 ControllerActionInvoker.GetParameterValues(ControllerContext controllerContext,ActionDescriptor actionDescriptor)+109 System.Web.Mvc.ControllerActionInvoker.InvokeAction(ControllerContext controllerContext,String actionName)+314 System.Web.Mvc.Controller.ExecuteCore()+105 System.Web.Mvc.ControllerBase .Execute(RequestContext requestContext)+39 System.Web。 Mvc.ControllerBase.System.Web.Mvc.IController.Execute(RequestContext requestContext) +7 System.Web.Mvc.<>c_DisplayClass8.b_4() +34 System.Web.Mvc.Async.<>c_DisplayClass1.b_0() +21 System.Web.Mvc.Async.<>c__DisplayClass81.b__7(IAsyncResult _) +12 System.Web.Mvc.Async.WrappedAsyncResult1.End() +59 System.Web.Mvc.MvcHandler.EndProcessRequest(IAsyncResult asyncResult) +44 System.Web.Mvc.MvcHandler.System.Web.IHttpAsyncHandler.EndProcessRequest(IAsyncResult result) +7 System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +8677678 System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +155 Mvc.ControllerBase.System.Web.Mvc.IController.Execute(RequestContext requestContext)+7 System.Web.Mvc。<> c_DisplayClass8.b_4()+34 System.Web.Mvc.Async。<> c_DisplayClass1.b_0()+ 21 System.Web.Mvc.Async。<> c__DisplayClass81.b__7(IAsyncResult _)+12 System.Web.Mvc.Async.WrappedAsyncResult1.End()+59 System.Web.Mvc.MvcHandler.EndProcessRequest(IAsyncResult asyncResult)+44 System.Web.Mvc.MvcHandler.System.Web.IHttpAsyncHandler.EndProcessRequest(IAsyncResult结果)+7 System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()+8677678 System.Web.HttpApplication.ExecuteStep(IExecutionStep步骤,布尔值和已完成同步)+155

any ideas guys? 有什么想法吗? Thanks 谢谢

See here , you probably got the same issue. 看到这里 ,您可能遇到了同样的问题。

And please don't ask same question several times. 并且请不要重复问同样的问题。 You can just edit it. 您可以编辑它。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM