4

Хотя мы в основном используем плавную конфигурацию для наших кодовых первых POCOs, мы сочли полезным использовать аннотации данных для таких вещей, как имя таблицы, PK и т. Д., Поскольку это упрощает для не-EF-компонентов, которые не имеют ссылки на ObjectContext для взаимодействия с этими объектами.Совместимость Fluent API и DataAnnotations в коде EF сперва

По нашему опыту, кажется, что два стиля конфигурации могут быть смешаны свободно, с плавной конфигурацией, переопределяющей DataAnnotations. Является ли это документированным где угодно? Есть ли риск для этой смешанной конфигурации?

настоящее время мы используем EF 4.3.1

ответ

5

Я лично не столкнулся каких-либо проблем со смешиванием код первого беглые API и данных аннотаций. Я также задавался вопросом, будет ли какая-либо перекрестная боль, и я могу честно сказать, что мне еще предстоит найти. Вот несколько ссылок на тематические исследования по теме, чтобы облегчить ваш ум.

(Direct из команды EF) http://msdn.microsoft.com/en-us/data/jj591583.aspx

(Часть 1) http://www.codeproject.com/Articles/476966/FluentplusAPIplusvsplusDataplusAnnotations-plusWor

0

Я не думаю, что это риск, - как и то и другое имеют эквивалентные аналоги для большинства этого.

Но, лично, когда я сталкиваюсь с проблемами, связанными с структурированием моих сущностей - прежде всего я хочу удалить аннотации, если таковые имеются, и переместить все на свободное.

Который со временем привело меня использовать довольно много прямо свободно конфигурации (также освобождая мои мои объекты любых связей с «состоянием ума» ДБ) ...

ИМО это «безопаснее», но только таким образом, чтобы вы могли сделать больше и контролировать вещи так, как вы хотели бы их. Также помогает с сохранением вещей последовательно и в одном месте.

0

Вы можете использовать атрибуты аннотации данных и Fluent API одновременно. Entity Framework имеет преимущество перед API-интерфейсом Fluent API над атрибутами данных.

Смежные вопросы