子オブジェクトを含むオブジェクトがあります。例えば。
public class Person
{
public string Name { get; set; }
public Car Car { get; set; }
}
public class Car
{
public int CarId{get;set;
public string Name { get; set; }
public string Year { get; set; }
}
次に、Razor ビューで DropDownlistFor を使用し、ユーザーが選択できる車のリストを指定します。ドロップダウンリストを次のようにバインドします
@Html.LocalLabelFor(m => m.Person.Car)
@Html.DropDownListFor(m => m.Person.Car, new SelectList(Model.Cars, "CarID, "Name"), "Select")
ユーザーが車を選択しない場合でも、jquery 検証は CarId が選択されていないことを検証します。car オブジェクトは null 許容でなければなりません。
フラットなビューモデルを作成することで、これを回避できることはわかっています。
フォームで車をオプションにする他の方法はありますか?