Использование отражения для выбора некоторых свойств - PullRequest
0 голосов
/ 26 января 2011

как выбрать только некоторые свойства класса. скажем, у меня есть класс

public class BaseEntity
{
   protected string _createdBy;
   protected DateTime _createdDate;
   protected string _updatedBy;
   protected DateTime _updatedDate;

   //set get
}

public class User : BaseEntity
{
   private string _username;
   private string _password;
   private Employee _employee;

   //set get 
}

Я хочу выбрать только Имя пользователя, Пароль и Сотрудник, но не CreatedBy, CreatedDate, updatedBy и updatedDate. Есть какой-либо способ сделать это? Я попытался поиск по Google, но я ничего не нашел так что я могу только жестко закодировать это, как это

if (!propertyInfo.Name.Equals("CreatedDate") ||
!propertyInfo.Name.Equals("CreatedBy"))
{
}

1 Ответ

7 голосов
/ 26 января 2011

Вы должны использовать флаг BindingFlags.DeclaredOnly в вызове Type.GetProperties () , который будет игнорировать унаследованные свойства.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...