Computer >> Máy Tính >  >> Lập trình >> C#

ViewData trong ASP .Net MVC C # là gì?

ViewData là một từ điển các đối tượng được lưu trữ và truy xuất bằng cách sử dụng chuỗi làm khóa, được sử dụng để chuyển dữ liệu từ Bộ điều khiển sang Chế độ xem. Vì ViewData là một từ điển nên nó chứa các cặp khóa-giá trị trong đó mỗi khóa phải là một chuỗi. ViewData chỉ chuyển dữ liệu từ bộ điều khiển sang chế độ xem chứ không phải ngược lại. Nó chỉ hợp lệ trong yêu cầu hiện tại.

Lưu trữ dữ liệu trong ViewData -

ViewData["countries"] = countriesList;

Truy xuất dữ liệu từ ViewData -

string country = ViewData["MyCountry"].ToString();

ViewData không cung cấp tính năng kiểm tra lỗi thời gian biên dịch. Ví dụ, nếu chúng ta đánh vần sai các tên khóa, chúng ta sẽ không gặp bất kỳ lỗi thời gian biên dịch nào. Chúng tôi sẽ biết về lỗi chỉ trong thời gian chạy.

Bộ điều khiển

Ví dụ

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();
      }
   }
}

Xem

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

Đầu ra

ViewData trong ASP .Net MVC C # là gì?