在ASP.NET MVC3中,某些函数(如HtmlHelper.ActionLink)可以接受隐式类型的对象并将其转换为查询字符串
@Html.ActionLink("Link", "Action", new { id = 1, params="asd"})
会产生类似http://www.localhost.com/controller/Action?id=1¶ms=asd
是否有内置方法将对象的属性转换为查询字符串格式?
答案 0 :(得分:3)
假设你有一个视图模型:
public class MyViewModel
{
public string Prop1 { get; set; }
public string Prop2 { get; set; }
}
和控制器:
public class HomeController : Controller
{
public ActionResult Index()
{
var model = new MyViewModel
{
Prop1 = "foo",
Prop2 = "bar"
};
return View(model);
}
}
您可以在视图中使用following overload:
@model MyViewModel
@Html.ActionLink("Link", "Action", new RouteValueDictionary(Model))
在你看来。