Asp.net mvc 3 MVC3我的一些字段有效,而有些字段无效

Asp.net mvc 3 MVC3我的一些字段有效,而有些字段无效,asp.net-mvc-3,validation,Asp.net Mvc 3,Validation,我坐在这里为ASP MVC3中的一个验证问题而挠头 不知何故,我能够验证字段数量,但字段OrderNumber无法验证。我可以让它空着,它仍然接受它。我也尝试过给它添加其他限制(比如最大和最小长度),但结果是一样的——它接受任何东西 我还尝试将“TextBoxFor”更改为“EditorFor”-但结果相同 另一方面,数量是我想要的。它要求您输入一个整数,不能为空 希望你们中的一些人能够看到我在这里做错了什么:) 这是我的模型: public class Order { [Require

我坐在这里为ASP MVC3中的一个验证问题而挠头

不知何故,我能够验证字段数量,但字段OrderNumber无法验证。我可以让它空着,它仍然接受它。我也尝试过给它添加其他限制(比如最大和最小长度),但结果是一样的——它接受任何东西

我还尝试将“TextBoxFor”更改为“EditorFor”-但结果相同

另一方面,数量是我想要的。它要求您输入一个整数,不能为空

希望你们中的一些人能够看到我在这里做错了什么:)

这是我的模型:

public class Order
{
    [Required(ErrorMessage="Insert Ordernumber (6-digits)")]
    public string OrderNumber { get; set; }

    [Required]
    public string Partnumber { get; set; }

    [Required]
    public long Quantity { get; set; }

    public Order()
    {
    }
}
以下是我的观点:

model POWeb.Models.AddModel
@使用(Html.BeginForm(“Add”,“Home”,FormMethod.Post)) {

//创建表
选择要生成的零件号
@Html.DropDownListFor(model=>model.SelectedPartNumber,model.partnumber)
输入采购订单号
@Html.TextBoxFor(model=>model.OrderNumber)@Html.ValidationMessageFor(model=>model.OrderNumber)
量
@Html.TextBoxFor(model=>model.Quantity)@Html.ValidationMessageFor(model=>model.Quantity)
添加
}安德斯


我的“猜测”是您的ViewModel
POWeb.Models.AddModel
没有镜像
OrderNumber
上的
[必需]
属性。您能否将
AddModel
的定义添加到您的问题中以验证这一点,因为订单类别很可能不同。

您可以查看type
POWeb.Models.AddModel
,但您尝试验证
订单
类型。我很确定这些类型的验证属性是不同的,因此您会遇到问题

很高兴能够提供帮助:)是的,也感谢您的帮助。让我想起我实际上做的可怕的事情:)呵呵……你说得对。我改为使用“订单”作为模型,现在它可以工作了(删除了AddModel,因为它不需要)。那是个新手犯的错误。有时候能多带一双眼睛真是太好了。谢谢你的帮助:)
//Create table
<table>
    <tr>
        <td>Select Partnumber to produce</td>
        <td>@Html.DropDownListFor(model => model.SelectedPartNumber, Model.PartNumbers)</td>
    </tr>

    <tr>
        <td>Enter PO number</td>
        <td>@Html.TextBoxFor(model => model.OrderNumber)@Html.ValidationMessageFor(model => model.OrderNumber)</td>
    </tr>

    <tr>
        <td>Quantity</td>
        <td>@Html.TextBoxFor(model => model.Quantity)@Html.ValidationMessageFor(model => model.Quantity)</td>
    </tr>

    <tr>
        <td colspan="2">
            <button type="submit" name="SubmitButton">Add</button>
        </td>
    </tr>

</table>