Nehmen Sie diese beiden Code Dinge:C#: Was ist der Unterschied zwischen TypeDescriptor.GetAttributes() und GetType(). GetCustomAttributes?
instance.GetType()
.GetCustomAttributes(true)
.Where(item => item is ValidationAttribute);
Und
TypeDescriptor.GetAttributes(instance)
.OfType<ValidationAttribute>();
Wenn die Klasse wie folgt aussieht:
[RequiredIfOtherPropertyIsNotEmpty("State", "City", ErrorMessage = ErrorDescription.CreateAccount_CityRequiredWithState)]
[RequiredIfOtherPropertyIsNotEmpty("State", "Address1", ErrorMessage = ErrorDescription.CreateAccount_Address1RequiredWithState)]
public class ManagePostModel
{
...
}
Wo RequiredIfOtherPropertyIsNotEmpty
ein ValidationAttribute
und hat AllowMultiple = true
.
Der erste gibt zwei Attribute zurück, der zweite gibt einen zurück.
Was ist der Unterschied, der das verursachen würde?
Siehe auch [typedescriptor-getproperties-vs-type-getproperties] (http://stackoverflow.com/questions/1402239/typedescriptor-getproperties-vs-type-getproperties) – nawfal