0

ここからのいくつかの例と他のいくつかのリソースに従って、ビューモデルに非常に単純なメンバーを作成し、dropdownlistfor()ヘルパーを使用してビューにドロップダウンリストとして表示しようとしました。頭を包み込むことができず、試しているものとうまく機能していません。

これが私のビューモデルです:

public class Car
{
    public int CarId { get; set; }
    public string Name { get; set; }
}

public class MyViewModel
{


    public IEnumerable<Car> Cars = new List<Car> { 
        new Car {
            CarId = 1,
            Name = "Volvo"
        },
        new Car {
            CarId = 2,
            Name = "Subaru"
        }
    };


    public int MyCarId { get; set; }
}

そしてここに私の見解があります:

@Html.DropDownListFor(m => m.MyCarId, new SelectList(Model.Cars, "CarId", "Name"))

これが私のコントローラーです:

public ActionResult MyView()
        {
            return View();
        }
4

2 に答える 2

1

あなたの例はうまくいきます、私はあなたがPOSTアクションでMyViewModelを送るのを忘れたと思います。

[HttpPost]
public ActionResult Index(MyViewModel model)
{
    return View(model);
}
于 2012-09-18T20:17:08.107 に答える
1

モデルをビューに送信することを確認する必要があります。

public ActionResult Index()
{
    var myViewModel = new MyViewModel()

    return View(myViewModel);
}

また、ビューで、モデルを定義していることを確認する必要があります。

@model namespace.MyViewModel
于 2012-09-18T20:25:48.970 に答える