ASP.NET에서 View를 동적으로 생성할 수 있는 기술 또는 구문이다. .cshtml 확장자로 만들어진다.
이런식으로 사용 할 수 있다.
public class User{
//사용자 번호
public int No {get; set;}
// 사용자 이름
public string UserName{get; set;}
}
public class HomeController : Controller
{
//http://www.example.com/Home/Index
public IActionResult Index()
{
var hongUser = new User
{
UserNo = 1,
UserName = "홍길동"
};
return View(hongUser);
}
public IActionResult Error()
{
return View();
}
}
}
형식객체를 View 템플릿에 전달 할 수 있도록 해준다.
- Dynamic Object로 되어 있고 직관적으로 사용 할 수 있다.
- 형식을 자동으로 유추하기 때문에 형 변환이 필요없다.
- 닷넷 프레임웍 3.5부터 사용가능
딕셔너리(Dictionary) 컬랙션으로 되어 있고 ViewBag에 비해 속도가 더 빠르다.
값이 Object로 나오기 때문에 형 변환을 해야 한다. 객체는 넘기지 못한다.
- 뷰데이터와 같은 특성을 가지고 있습니다.
- 값이 세션에 임시저장되어 리디렉션이 발생해도 값이 유지 됩니다.