1

在我看来,我希望能够独立于关联的控件标记呈现模型属性的 ID。

例如,如果我的模型是:

public class Author {
    public string Title { get; set; }
    public Address Address { get; set; }
}

在我看来,我希望能够使用扩展HtmlHelper来使用 lambda 呈现Title属性的 ID。就像是:

@Html.GetClientIdFor(x => x.Title)

这将输出“标题”。

对于嵌套对象,我想:

@Html.GetClientIdFor(x => x.Address.PostCode)

输出“Address_PostCode”。

我确定我可以从ViewData.TemplateInfo对象访问数据,但从那里我有点卡住了。

有任何想法吗?我正在使用 MVC4,但我想要一个也适用于 MVC3 的解决方案。

4

1 回答 1

3

除非我误解了你的问题,否则有一个HtmlHelper正是你想要的:IdFor

@Html.IdFor(x => x.Address.PostCode) // Will return Address_PostCode

虽然,这适用于 MVC4 及更高版本。对于 MVC3,你需要自己动手。看到这个 SO

于 2013-07-18T17:58:29.350 回答