Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Estou com dúvida no curso de ASP.NET MVC: Desenvolvendo para Web, no exercício 2 do capítulo Validando um produto com Model Validation.

Na resposta do exercício é citado o uso da anotação "RangeAttribute". Porém, na vídeo-aula é citado que deve-se utilizar o termo "Attribute" apenas quando a classe herda de "Attribute". Nesse caso, a resposta não seria apenas "Range(0, 10000)"?

2 respostas
solução!

Realmente é válido usar somente Range ao invés de RangeAtrribute pois como o próprio vídeo diz pela convenção da microsoft você pode suprimir a parte Atrribute dentro das classes que representam atributos como a Classe Produto em Models para maior facilidade na escrita inclusive isto é feito na video de aula deste exercício com o [StringLength(20)] neste caso o Attribute foi suprimido sem prejuízo ao código.

Olá Paulo

Como foi respondido pelo Diogo, podemos omitir a palavra Attribute dentro do código, então os códigos

[RangeAttribute(10, 100)]
public int Valor { get; set; }

É equivalente ao código:

[Range(10, 100)]
public int Valor { get; set; }

O exercício coloca como resposta o RangeAttribute pois esse é o nome oficial da classe na documentação da Microsoft.