의 얻을 것 얼마나 모르기 때문에) ViewDataModel을 만듭니다. 이 어수선하지 않고, 컨트롤러에서 코드을 많이 이동하고 "이 페이지를 표시하기 위해 필요한 것은"-code에 있기 때문에
public class CreateProductViewData
{
public Product product { get; private set; };
public SelectList Categories { get; private set; }
public CreateProductViewData(Product p) {
product = p;
Categories = new SelectList(listOfCategories, "Name","CategoryId");
}
}
public ActionResult Create()
{
Product p = new Product() { name="New Product..." } ;
return View(new CreateProductViewData(p));
}
in Create.aspx
...Inherits="System.Web.Mvc.ViewPage<CreateProductViewData>" %>
..
..
<%= Html.DropDown("CategoryId", Model.Categories, "-");
나는 주로 "어떻게 데이터를 표시 할"접근 B를 사용 암호.
그래서 사실상 I는 (행위
- 코드 (컨트롤러) 보조 데이터를 뷰를 렌더링 (을 ViewData 개체)
- 코드를 로딩하여 뷰를 준비
- 코드가 .aspx)
일반적으로 ViewDataModel을 편집 및 만들기 모두에 다시 사용할 수 있습니다.