ASP.NET/ASP.NET Core

[ASP.Net Core] ViewBag, ViewData, TempData 와 ASP.Net Web-Form 방식의 ViewState 비교하기

http://portfolio.wonpaper.net 2023. 4. 29. 13:46

[ASP.Net] - WebForm 에서의 ViewState

 

PostBack 처리전과 후에 각종 변수들의 기록을 남기기위해 사용하는 넘이다.

PostBack 하기전에

 

        ViewState["tgroup"] = 10;
        ViewState["tdepth"] = 20;
        ViewState["tfloat"] = 30;

 

이런식으로 저장하고

PostBack 한후에

 

        int tgroup = (int)ViewState["tgroup"];
        int tdepth = (int)ViewState["tdepth"];
        int tfloat = (int)ViewState["tfloat"];

 

이런식으로 불러올 수 있다.

 

 

[ASP.Net Core]

 

ViewBag, ViewData, TempData 모두다 Controller 상에서 각각

 

   ViewBag.Test1 = "고고싱";

   ViewData["Test2"] = "홍길동";

   TempData ["Test3"] = "이순신";

 

으로 저장하고,

 

Razor View 페이지 상에서

간단히

  @ViewBag.Test1

  @ViewData["Test2"]

  @TempData["Test3"]

 

으로 불러올 수 있다.

다만, ViewData 와 TempData 은 불러올 때 캐스팅 해야하는 번거로움이 있다.