Quitad esto de dos códigos:C#: ¿Cuál es la diferencia entre TypeDescriptor.GetAttributes() y GetType() .GetCustomAttributes?
instance.GetType()
.GetCustomAttributes(true)
.Where(item => item is ValidationAttribute);
Y
TypeDescriptor.GetAttributes(instance)
.OfType<ValidationAttribute>();
Si la clase parece:
[RequiredIfOtherPropertyIsNotEmpty("State", "City", ErrorMessage = ErrorDescription.CreateAccount_CityRequiredWithState)]
[RequiredIfOtherPropertyIsNotEmpty("State", "Address1", ErrorMessage = ErrorDescription.CreateAccount_Address1RequiredWithState)]
public class ManagePostModel
{
...
}
Dónde RequiredIfOtherPropertyIsNotEmpty
es un ValidationAttribute
y tiene AllowMultiple = true
.
El primero arroja dos atributos, el segundo devuelve uno.
¿Cuál es la diferencia que causaría esto?
Ver también [typedescriptor-getproperties-vs-type-getproperties] (http://stackoverflow.com/questions/1402239/typedescriptor-getproperties-vs-type-getproperties) – nawfal