2014-03-24 64 views
1
的无效条目

控制器中有不同的操作。两个环节,一个到每个动作(如菜单) 点击没有问题各项工作,通过点击链接的两个动作之间切换引发以下错误(有时)ArgumentException:参数字典包含参数

[ArgumentException的:该参数字典包含了无效条目对于'Poject.Areas.Area1.Controllers.ControllerA'中的方法'System.Web.Mvc.ActionResult Overview(Poject.Areas.Area1.Models.ViewModel2VM)'的参数'vm'。字典包含 类型'Poject.Areas.Area1.Models.ViewModel1VM'的值,但 参数需要类型为 'Poject.Areas.Area1.Models.ViewModel2VM'的值。参数名:参数] System.Web.Mvc.ActionDescriptor.ExtractParameterFromDictionary(的ParameterInfo 的ParameterInfo,IDictionary`2参数的MethodInfo MethodInfo的)733

时代的大多数是作品,有时会显示错误。所有ViewModelClass继承自同一个ViewModelBase类。这可能是一个原因吗?

任何帮助,欢迎

+0

在向控制器方法中添加“虚拟”后出现此错误。该消息引用以“Proxy”结尾的控制器类名 - 所以它涉及我在该方法中使用的[Transaction] NHibernateIntegration属性 – PandaWood

回答

0

错误似乎相当明确的:你需要一个类型Poject.Areas.Area1.Models.ViewModel2VM,但在有些情况下类型Poject.Areas.Area1.Models.ViewModel1VM

如果ViewModel1VM AMD ViewModel2VM是等价的多还是少,那么也许你可以通过创建他们继承一个共同的类解决这个问题,并把它作为参数类型,所以该方法Overview()会接受这两种类型。

+0

是的,我知道'错误的'ViewModel类已加载。但是,这怎么发生?我不提供任何关于链接的论点。 – McNos

相关问题