Я использую RIA Services и EF Code Сначала создаю приложение, в котором сущности расширяются с использованием пользовательских свойств (каждый расширяемый объект имеет мешок свойств, который в основном является отношением один к другому с объектом Property).Проверка свойств NotMapped в EF Code First + Ria Services
Кроме того, был написан механизм генерации кода, который генерирует «обычные» свойства оболочки C# для каждого такого расширенного свойства. Благодаря этому весь механизм является гораздо более прозрачным для разработчиков
[NotMapped]
public string Version
{
get
{
return this.GetProperty(PropertyNameVersionConst) == null
? null
: this.GetProperty(PropertyNameVersionConst).StringValue;
}
set
{
this.SetProperty(PropertyNameVersionConst, value);
}
}
Возникает вопрос - можно ли использовать проверки атрибутов таких ([NotMapped]) свойства? На первый взгляд я не вижу причин, почему это не должно быть возможным.
[NotMapped]
[Required]
public string Version{...}
Я столкнулся с проблемой, когда исключение проверки (на SaveChanges()) выбрасывают такое свойство с атрибутом Required, даже если собственность была установлена в ненулевое значение.
У меня есть свойство value-type (struct) в моей модели, и хотя я помечал его как '[NotMapped]' EF все еще проверяет его значение перед сохранением. я также попробовал «виртуальный» модификатор, но все равно никаких шансов – sos00