从ValidationSummary MVC3中排除

时间:2011-01-31 22:20:34

标签: asp.net-mvc asp.net-mvc-3 validation

我有问题。你看,

我有这个代码(MVC3)

@Using Html.BeginForm()
 @Html.ValidationSummary(True, "Please review errors.")

 @<fieldset>
 <legend>Fields</legend>
        <p>
            @Html.LabelFor(Function(Model) Model.ID_PROVINCIA, "Code:")
            @Html.TextBox("ID_PROVINCIA", "Automatic", New With {.readonly = "readonly"})
        </p>
        <p>
            @Html.LabelFor(Function(Model) Model.DESC_PROVINCIA, "Name:")
            @Html.TextBoxFor(Function(Model) Model.DESC_PROVINCIA, New With {.style = "text-transform:uppercase"})
        </p>
        <p>
            <input type="submit" value="Save" />
        </p>
    </fieldset>

    @<div>
        @Html.ActionLink(" ", "List", "Administration", New With {.area = ""}, New With {.class = "imgBack", .title = "Back"})
    </div>
End Using

如果我使用 @ Html.ValidationSummary(True,“请查看错误。”)提交时不会发生任何事情。如果我使用 @ Html.ValidationSummary(错误,“请查看错误。”)我收到错误:“字段ID_PROVINCIA必须是数字”

我需要在提交表单时在ID_PROVINCIA上排除这种混淆,因为使用文本“自动”,用户知道ID号是自动分配的。

在我得到的控制器中:

<AcceptVerbs(HttpVerbs.Post)> _
Function Create(<Bind(Exclude:="ID_PROVINCIA")> ByVal parProvincia As PROVINCIA) As ActionResult
End Function

在MVC2中没有问题,实际上我正在尝试迁移应用程序。任何想法??
问候。

1 个答案:

答案 0 :(得分:0)

我解决了问题的变化

@Html.TextBox("ID_PROVINCIA", "Automatic", New With {.readonly = "readonly"})    

@Html.TextBox("ID_PROVINCIA1", "Automatic", New With {.readonly = "readonly"})

这是因为我没有使用TextBoxFor for Model和控制器Bind-Exclude ID_PROVINCIA。

见你。