У меня есть POCO-класс Entity Framework, сгенерированный шаблоном T4.
Я планирую использовать сгенерированный класс в качестве контракта на данные.Тем не менее, он имеет несколько свойств, которые не должны быть в контракте.Например, у меня есть свойство с именем AddressId.Это внешний ключ к таблице адресов.Поскольку фактический адрес привязан к объекту, я не хочу, чтобы AddressId был виден клиенту.
Я мог бы изменить шаблон T4, но я бы не стал.
Я виделэто post , в котором показано, как использовать MetadataType для добавления атрибутов к существующим свойствам в частичных классах.Вот пример, который они дали:
[MetadataType(typeof(Dinner_Validation))]
public partial class Dinner {}
public class Dinner_Validation
{
[Required]
public string Title { get; set; }
}
Но я попробовал это для своего класса (используя [IgnoreDataMember]), и он не работает (AddressId все еще отображается).
КакМогу ли я скрыть это одно свойство, не создавая совершенно новый класс для копирования всех моих данных?