У меня есть лицо и организация:
Человек выглядит так:
public class PersonEntity
{
public string FirstName {get;set;}
public string LastName {get;set;}
public bool IsValid(PersonEnum Attribute, string AttributeValue)
{
if(attribute == PersonEnum.FirstName && AttributeValue == null)
return false;
if(attribute == PersonEnum.LastName && AttributeValue == null)
return false;
return true;
}
}
У меня есть PersonEnum
// Создан только для поддержки метода IsValid.
public enum PersonEnum
{
FirstName, LastName
}
Аналогично Организация имеет Сущность и Перечень.
Я хочу создать класс Helper следующим образом, чтобы все проверки были в одном месте, я хочу передать имя класса (Entity), его члена (Enum) и значение:
public class Helper
{
//Not sure how to pass A Class def and an attribute.
public static ValidateEntityAttribute(*[EntityEnum]*,*[EntityEnum]*, Value)
{
.. do something that looks at the Entity and call it's IsValid method.
}
}
Можно ли это сделать без использования Reflection, я также хочу, чтобы это было общим, чтобы я мог использовать его для всех своих сущностей.
Есть предложения?