Tôi đang cố gắng chuyển ngẫu nhiên string
từ số Controller
của mình tới số View
.Sử dụng ViewData để chuyển chuỗi từ Bộ điều khiển sang Chế độ xem trong ASP.NET MVC3
Đây là mã của tôi Controller
:
[HttpPost]
public ActionResult DisplayForm(UserView user)
{
//some data processing over here
ViewData["choice"] = "Apple";
return RedirectToAction("Next", "Account");
}
Bây giờ tôi muốn vượt qua giá trị dữ liệu "Apple" để quan điểm của tôi Next.cshtml
mà được tạo ra như sau:
//View: Next.cshtml
@{
ViewBag.Title = "Thanks for registering";
Layout = "~/Content/orangeflower/_layout.cshtml";
}
<p>Your favorite fruit is:</p>@ViewData["choice"]
Nhưng tôi không thể để xem dữ liệu của tôi trong trình duyệt khi dự án chạy.
Dưới đây là ảnh chụp:
1) Mở debug, bộ điều khiển hiển thị giá trị:
2) Quan điểm trình duyệt không hiển thị các giá trị "Apple"
3) Gỡ lỗi thêm để xem Next.cshtml
của mình Xem:
Tại sao giá trị không được chuyển đến Chế độ xem chính xác. Cả hai bộ điều khiển của tôi cho Next
và DisplayForm
đều nằm trong cùng một Bộ điều khiển AccountController.cs
, giá trị vẫn không được hiển thị.
Ai đó có thể giúp tôi giải quyết vấn đề này không?
ohh vì vậy tôi cần phải viết trả lại Xem ("Tiếp theo", "Tài khoản") theo mã của tôi ngay nếu tôi không chuyển hướng? –
@ParthDoshi, vâng, nếu bạn muốn sử dụng ViewData trực tiếp. Nhưng nếu bạn muốn giữ mô hình Redirect-After-Post bạn có thể sử dụng TempData như trong câu trả lời của tôi. –
cảm ơn nó đã hoạt động !! :) –