我有这样的行动:
[ObjectRequired]
public ActionResult Campaign(int? id, SomeClass object = null)
{
...
}我需要的是路由到这个操作:
a)仅使用int参数(.../Campaign/12345)
b)不带参数(可选) (.../Campaign)
MVC错误表明,没有非参数构造函数(如果删除"object“参数-没问题)。但我不能删除"object“参数,因为我需要检查一些值,并从ObjectRequired属性传递值,如下所示:
filterContext.ActionParameters["object"] = _someObject;我不想使用像ViewData这样的结构。正确的方法在哪里?
发布于 2015-07-25 06:24:35
我不是100%相信我要说的话,但我会说得好像我是……
你不能把一个对象传递给一个。您可以传递回参数并使用自定义路由处理程序为您构建对象。
您还可以将对象保存在数据中,并使用实体框架来获取模型。
您也可以使用TempData,但这与ViewData类似。
您也可以将其保存在他们的会话中。
https://stackoverflow.com/questions/31563637
复制相似问题