MVC - 将Type作为动作参数传递

时间:2011-04-14 15:21:24

标签: model-view-controller parameters types action

我可以通过HTML.ActionLink()将Type的参数传递给MVC中的Action方法。

e.g。

public ActionResult Get(Type containerType, string name)
{
            throw new NotImplementedException("vkag");
}

<%=Html.ActionLink(flow.Source.Name, "Get", new { containerType = typeof(Worksheet), name = flow.Source.Name})%>

由于某种原因,类型始终为null。我也无法传回基类型以允许子类型传递到它的位置。

我不知道这是否是HTML ActionLink Helper或MVC的限制。

我无法传递一个接口,我指定了一个基本类型参​​数,并使用子类型作为基类型参数的参数,我似乎无法传回一个类型。我被困在这里了。

是否有其他HTML帮助程序可以提供帮助?

我可以对模型绑定做任何事吗?

在将控制权传递给我的操作方法之前,我可以在ActionLink调用期间修改模型的状态吗?

有点卡在这里。任何帮助将不胜感激。

由于

1 个答案:

答案 0 :(得分:1)

如果你考虑的话,你可以传递给Routes的类型必须可以通过URL传递。

您无法传递类型,因为它必须序列化。为什么不将containerType作为字符串传递并将其转换回动作中的Type?