给定一个网址:
?http://www.stackoverflow.com/question的问 = 123&安培;的答案 = 5
及其相应的ActionMethod和Model:
public ActionResult Question(RequestObject request)
{
return View("Question", request);
}
public class RequestObject
{
public string AskId
{
get;
set;
}
public string NumberOfAnswers
{
get;
set;
}
}
请注意,QueryString和RequestObject的参数不同。我可以使用默认绑定行为来实现吗?我是否需要创建自定义活页夹?
谢谢!
答案 0 :(得分:1)
听起来像是你想要的自定义模型活页夹。 Scott Hanselman有一个很好的例子来实现自定义绑定器here
答案 1 :(得分:0)
您可以使用显式对象初始化:
public ActionResult Question(string ask, string answers)
{
return View("Question", new RequestObject
{
AskId = ask,
NumberOfAnswers = answers
});
}
答案 2 :(得分:0)
覆盖DefaultModelBinder。特别是它的BindProperty
方法。