繁体   English   中英

如何在ASP.NET MVC Razor中验证DropdowList

[英]How to validate DropdowList in ASP.NET MVC Razor

请帮我这个问题。 我无法验证我的项目的DropdownList。 我的模型使用了DataAnnontation:

public class Category
{
   public int Id { get; set; }

   public virtual IList<Product> Products { get; set; }
}

public class Product
{
    [Required]
    [StringLength(32)]
    public string Id { get; set; }
    [Required]
    public int CategoryId { get; set; }

    public virtual Category Category { get; set; }
}

最后,一些创建视图的代码:

<script src="~/Scripts/jquery.validate.min.js" type="text/javascript"></script>
<script src="~/Scripts/jquery.validate.unobtrusive.min.js" type="text/javascript"></script>  
@using (Html.BeginForm())
{
    @Html.ValidationSummary(true)   
    @Html.DropDownList("CategoryId", String.Empty) @Html.ValidationMessageFor(x => x.CategoryId)</td>
} 

您需要使用@html.DropDownListFor()

尝试这个。

模型

public class YourViewModel
{
    [Required]
    public string CategoryId { get; set; }

    public IEnumerable<Category> Categories { get; set; }
}

形成

@using (Html.BeginForm())
{
    @Html.DropDownListFor(
        x => x.CategoryId, 
        new SelectList(Model.Categories, "ID", "CategoryName"), 
        "-- Please select a category --"
    )
    @Html.ValidationMessageFor(x => x.CategoryId)
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM