Câu hỏi trắc nghiệmAdvanced Cross-Platform Application Programming With .NET - Lập trình ứng dụng đa nền tảng nâng cao với .NETPRN222 - Chương 4: ASP.NET Core MVC
What is the primary purpose of ViewBag and ViewData in ASP.NET Core?
// Controller
public IActionResult Index()
{
ViewBag.Message = "Hello from ViewBag!";
ViewData["Title"] = "My Page Title";
return View();
}
// View
<p>@ViewBag.Message</p>
<h1>@ViewData["Title"]</h1>
4 phương ánCó lời giảiXuất hiện trong 1 bộ đề
A·B·C·DCác phương án trả lời
ATo store data persistently across multiple requests.
To pass data from a controller action to a view.Đúng
CTo manage user sessions.
DTo encrypt sensitive data.
Giải thích chi tiết
Đáp án đúng: B. ViewBag và ViewData là hai cơ chế truyền dữ liệu MỘT CHIỀU từ action của controller sang view trong phạm vi cùng một request: ViewData là từ điển kiểu object nên phải ép kiểu khi dùng, còn ViewBag là lớp bọc dynamic quanh chính từ điển đó nên viết gọn hơn. Cả hai đều mất giá trị ngay khi request kết thúc, vì vậy phương án A sai - muốn giữ dữ liệu qua nhiều request phải dùng TempData hoặc Session. Quản lý phiên (C) là việc của Session; còn mã hoá dữ liệu (D) không liên quan gì tới hai cơ chế này.