Làm cách nào để truy cập ModelState từ trong Chế độ xem của tôi (trang aspx)?


114

Làm cách nào để truy cập ModelState từ trong Chế độ xem của tôi (trang aspx)?


1
Tôi không nghĩ bạn nên làm vậy. Điều đó sẽ xảy ra trong Bộ điều khiển.
Matthew Groves

1
Tôi cần biết ModelState của mình có hợp lệ không. Tôi không muốn làm điều này: <% if (Html.ValidationSummary ()! = Null)%> <% {%> <p class = "validation-Summary-error"> Thư của bạn chưa được gửi. Vui lòng sửa các lỗi bên dưới và thử lại. </p> <%}%> Thay vào đó, tôi muốn làm điều này: <% if (! ViewData.ModelState.IsValid) {%> <p class = "validation-Summary-error"> Thư của bạn không được gửi. Vui lòng sửa các lỗi bên dưới và thử lại. </p> <%}%>
Saajid Ismail

12
Đó là những âm thanh giống như một lý do đủ tốt để truy cập ModelState
BritishDeveloper

Hoàn toàn không có gì sai khi truy cập ModelState trong chế độ xem. Nó là một phần của ViewData.
kennythecoder

Câu trả lời:


179

Sử dụng ViewContext.ViewData.ModelState.


19
Cũng xứng đáng để lưu ý rằng bạn chỉ có thể làm ViewData.ModelStatevà nếu bạn muốn hiển thị một số đánh dấu có điều kiện về lỗi bạn có thể làm như thế này:@if (!ViewData.ModelState.IsValid)
Các Muffin Man
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.