Computer >> 컴퓨터 >  >> 프로그램 작성 >> C#

ASP .Net MVC C#에서 ViewBag를 사용하는 방법은 무엇입니까?

<시간/>

ViewBag는 C# 4.0에 도입된 동적 기능을 사용합니다. 객체에 동적으로 추가된 속성을 가질 수 있습니다. 내부적으로는 Controller 클래스의 기본 클래스인 ControllerBase 클래스의 동적 typeproperty입니다.

ViewBag는 컨트롤러에서 보기로 데이터만 전송하며 그 반대로는 전송하지 않습니다. 리디렉션이 발생하면 ViewBag 값이 null이 됩니다. ViewBag는 값을 동적으로 설정하고 가져올 수 있으며 강력한 형식으로 변환하지 않고도 추가 필드를 원하는 수만큼 추가할 수 있습니다.

ViewBag에 데이터 저장 -

ViewBag.Counties = countriesList;

ViewBag에서 데이터 검색 -

string country = ViewBag.Countries;

컨트롤러

using System.Collections.Generic;
using System.Web.Mvc;
namespace DemoMvcApplication.Controllers{
   public class HomeController : Controller{
      public ViewResult Index(){
         ViewBag.Countries = new List<string>{
            "India",
            "Malaysia",
            "Dubai",
            "USA",
            "UK"
         };
         return View();
      }
   }
}

보기

@{
   ViewBag.Title = "Countries List";
}
<h2>Countries List</h2>
<ul>
@foreach(string country in ViewBag.Countries){
   <li>@country</li>
}
</ul>

출력

ASP .Net MVC C#에서 ViewBag를 사용하는 방법은 무엇입니까?