Обязательные свойства для необязательных сложных типов Entity Framework
Я хочу определить[Required]
атрибуты для сложного типа в Entity Framework. Например, у меня естьCustomer
сущность с необязательнымAddress
, Объект Address имеет обязательныйPostCode
свойство.
[ComplexType]
public class Address {
public string Address1 { get; set; }
[Required]
public string PostCode { get; set; }
}
public class Customer {
public int CustomerId {get;set;}
public Address Address {get;set;}
}
Я НЕ хочу хранить свой сложный тип как отдельную сущность (на самом деле я не использую Address, это просто простая иллюстрация проблемы). Я не могу оставить Customer.Address null, потому что это дает ошибку:
Нулевое значение для ненулевого члена. Участник: «Адрес».
Если я предоставляю пустую сущность Address, проверка завершается неудачей в поле PostCode из-за атрибута Required.
Есть ли способ добиться этого? Я использую EF5 / NET4.5.