ViewData는 문자열을 키로 저장하고 검색하는 객체의 사전입니다. 컨트롤러에서 뷰로 데이터를 전송하는 데 사용됩니다. ViewData는 사전이기 때문에 각 키가 문자열이어야 하는 키-값 쌍을 포함합니다. ViewData는 컨트롤러에서 뷰로 데이터만 전송하며 그 반대로는 전송하지 않습니다. 현재 요청 중에만 유효합니다.
ViewData에 데이터 저장 -
ViewData["countries"] = countriesList;
ViewData에서 데이터 검색 -
string country = ViewData["MyCountry"].ToString();
ViewData는 컴파일 시간 오류 검사를 제공하지 않습니다. 예를 들어 키 이름의 철자를 틀리면 컴파일 시간 오류가 발생하지 않습니다. 런타임 시에만 오류에 대해 알게 됩니다.
컨트롤러
예시
using System.Collections.Generic;
using System.Web.Mvc;
namespace DemoMvcApplication.Controllers{
public class HomeController : Controller{
public ViewResult Index(){
ViewData["Countries"] = new List<string>{
"India",
"Malaysia",
"Dubai",
"USA",
"UK"
};
return View();
}
}
} 보기
@{
ViewBag.Title = "Countries List";
}
<h2>Countries List</h2>
<ul>
@foreach(string country in (List<string>)ViewData["Countries"]){
<li>@country</li>
}
</ul> 출력
