模型绑定在html标记和模型中使用不同的名称

时间:2011-09-09 11:04:06

标签: asp.net-mvc model-binding

在asp.net MVC 1.0应用程序中,我有以下操作

public ActionResult Submit(ContactModel model)
{
    ContentResult ret = new ContentResult();

    //do something

    return ret;
}

其中ContactModel定义为:

public class ContactModel
{
    public string Name { get; set; }
    public string Email { get; set; }
    public string Subject { get; set; }
    public string Message { get; set; }
    public bool Authorization { get; set; }
}

鉴于此,在发布到此操作的Html表单中,输入标记的名称与ContactModel类中的属性名称不同。有没有办法将html名称映射到类名,以便模型绑定器可以完成它的工作?


绑定前缀(见How to use Bind Prefix?), 可以部分解决此问题,但不允许为每个属性定义完整别名。 绑定前缀有一个奇怪的行为,因为它假定在前缀和名称之间有一个'。' (点)。

1 个答案:

答案 0 :(得分:0)

我不这么认为。

你可以创建自己的模型绑定器。有关示例,请参阅here