在ASP.NET MVC中,url参数名称可以与model的属性名称不同吗?

时间:2011-08-26 13:26:06

标签: asp.net-mvc

  

可能重复:
  Asp.Net MVC 2 - Bind a model's property to a different named value

给出以下网址:

~/mycontroller/myaction/?REG_NAME=123

采取以下行动:

public ActionResult MyAction(ActionRequest model)

和型号:

public class ActionRequest
{
    [ThisIsTheAttributeNameImLookingFor("REG_NAME")]
    public string RegisteredTo { get; set;}
}

如何使用其他名称将模型的属性(RegisteredTo)映射到url参数(REG_NAME)?

继承CustomModelBinderAttribute不是选项,因为它不能应用于属性。

2 个答案:

答案 0 :(得分:0)

不存在此类属性。您可以使用自定义模型绑定器,也可以使用自定义TypeDescriptor。

答案 1 :(得分:0)

你可以这样:

public class ActionRequest
{
    private string REG_NAME { get; set;}

    public string RegisteredTo { get { return REG_NAME; } set { this.REG_NAME = value; } ;}
}