Como faço para acessar o ModelState de dentro da minha visualização (página aspx)?


114

Como faço para acessar o ModelState de dentro da minha visualização (página aspx)?


1
Eu não acho que você deveria. Esse tipo de coisa deve acontecer no Controlador.
Matthew Groves

1
Preciso saber se meu ModelState é válido. Não quero fazer isso: <% if (Html.ValidationSummary ()! = Null)%> <% {%> <p class = "validation-summary-errors"> Sua mensagem não foi enviada. Corrija os erros abaixo e tente novamente. </p> <%}%> Em vez disso, quero fazer isso: <% if (! ViewData.ModelState.IsValid) {%> <p class = "validation-summary-errors"> Sua mensagem não foi enviada. Corrija os erros abaixo e tente novamente. </p> <%}%>
Saajid Ismail

12
Isso soa como uma razão boa o suficiente para acessar ModelState
BritishDeveloper

Não há absolutamente nada de errado em acessar ModelState na visualização. Faz parte do ViewData.
kennythecoder

Respostas:


179

Use ViewContext.ViewData.ModelState.


19
Também digno de nota que você pode apenas fazer ViewData.ModelStatee se quiser exibir alguma marcação condicional nos erros, você pode fazer assim:@if (!ViewData.ModelState.IsValid)
The Muffin Man
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.