0

モデル:

public class Product
{
    public string Title { get; set; }

    [Required]
    public int CategoryId { get; set; } 
    //or
    public int? CategoryId { get; set; } 
}

コントローラ:

ViewBag.Categories = db.Categories.ToList();

意見:

@Html.DropDownListFor(m => m.CategoryId , new SelectList(ViewBag.Categories , "CategoryId ", "Title"),"")
@Html.ValidationMessageFor(model => model.CategoryId )

そして、クライアント側の検証があります

しかし、Microsoft Default Scaffolding では:

コントローラ:

ViewBag.CategoryId = new SelectList(db.Categories, "CategoryId ", "Title");

意見:

@Html.DropDownList("CategoryId" ,"")

とても素敵できれいなコードです。しかし、クライアント側の検証は機能しません。Microsoft のデフォルトのスキャフォールディング構文を使用するにはどうすればよいですか? クライアント側の検証があります

4

1 に答える 1

0

CategoryIdプロパティをnull許容にするだけです

[Required]
public int? CategoryId { get; set; }
于 2012-07-09T09:32:23.497 に答える