asp.net

[.net] ViewBag

TTTGGG 2024. 7. 10. 12:29
728x90
반응형
SMALL

ViewBag은 ASP.NET MVC에서 사용하는 동적 객체로, 컨트롤러에서 뷰로 데이터를 전달할 때 사용한다.

C#의 'dynamic' 키워드를 기반으로 하여 컴파일 타임에 속성을 정의하지 않고 런타임에 동적으로 속성을 추가할 수 있는 객체이다.

 

ViewBag의 특징

 - 동적 타입 : ViewBag은 컴파일 시점에 속성의 존재 여부를 확인하지 않는다. 런타임에 속성을 추가하고 사용할 수 있다.

 - 컨트롤러에서 뷰로 간편하게 데이터를 전달 할 수 있다. 

 - 데이터 타입에 구애받지 않고 다양한 타입의 데이터를 저장할 수 있다.

 - 동적 타입이므로 타입 안정성이 부족하다. 잘못된 속성 이름이나 타입으로 인한 런타임 오류가 발생할 수 있다.

 

사용 예제

컨트롤러

public class HomeController : Controller
{
    public ActionResult Index()
    {
        ViewBag.Message = "Hello, World!";
        ViewBag.Number = 12345;
        ViewBag.Date = DateTime.Now;

        return View();
    }
}

 

<!DOCTYPE html>
<html>
<head>
    <title>ViewBag Example</title>
</head>
<body>
    <h1>@ViewBag.Message</h1>
    <p>Number: @ViewBag.Number</p>
    <p>Date: @ViewBag.Date</p>
</body>
</html>

 

728x90
반응형
LIST