Asp.net mvc 2 了解label helper方法,特别是;至于;属性

Asp.net mvc 2 了解label helper方法,特别是;至于;属性,asp.net-mvc-2,label,Asp.net Mvc 2,Label,我有一个强类型的局部视图CheckBox.ascx,它呈现一个复选框。这由另一个局部视图使用,该视图使用CheckBox.ascx呈现复选框列表 我在弄清楚如何使用Html.Labelhelper方法使标签正常工作时遇到问题,即将Labelfor属性设置为相关复选框的id 复选框的“我的视图”标记如下所示: (我正在使用非顺序列表绑定,如下所述) 这里的复杂性在于,我的复选框ID将被损坏-[,],字符替换为. Html.Labelhelper方法能在这里帮助我吗?我的解决方案是手动编码Lab

我有一个强类型的局部视图
CheckBox.ascx
,它呈现一个复选框。这由另一个局部视图使用,该视图使用
CheckBox.ascx
呈现复选框列表

我在弄清楚如何使用
Html.Label
helper方法使标签正常工作时遇到问题,即将
Label
for
属性设置为相关复选框的
id

复选框的“我的视图”标记如下所示: (我正在使用非顺序列表绑定,如下所述)


这里的复杂性在于,我的复选框ID将被损坏-
[
]
字符替换为
.


Html.Label
helper方法能在这里帮助我吗?

我的解决方案是手动编码
Label
元素

<label for="<%= string.Format("checkBoxes_{0}__Checked", Model.Id)%>"><%= Html.Encode(Model.Label)%></label>


(注意复选框名称中的
[
]
字符被渲染为下划线)

您是否考虑过更改您的
checkbox.ascx
,以便它同时渲染标签和复选框?
<label for="<%= string.Format("checkBoxes_{0}__Checked", Model.Id)%>"><%= Html.Encode(Model.Label)%></label>