Какова цель каждого из атрибутов System.ComponentModel.DataAnnotations? - PullRequest
3 голосов
/ 22 февраля 2011

Я делаю MVC 3-приложение, использующее Entity Framework 4 с POCO.Я хочу как можно больше аннотировать все свои объекты.У меня проблема, однако, что я не могу найти хорошую документацию о значении каждого атрибута.Некоторые из них довольно прямолинейны, например [Required] или [StringLength(...)].Однако с такими атрибутами, как [Association], я не уверен на 100%.Я помещаю это в свойство навигации?На иностранном ключе собственности?Только на многие ко многим отношениям?Является ли thisKey первичным ключом этого объекта или внешним ключом в этом объекте?

Я не могу найти ни одного хорошего ресурса, в котором перечислены все эти свойства с хорошим объяснением и примерами.

Для ассоциацииMSDN просто говорит: «Указывает, что элемент сущности представляет отношение данных, такое как отношение внешнего ключа.»
и «thisKey: список разделенных запятыми имен свойств значений ключа на стороне thisKeyассоциация «.

Я получил ответ на более конкретный вопрос об одном из атрибутов:
Ассоциация: Как использовать System.ComponentModel.DataAnnotations.AssociationAttribute

1 Ответ

1 голос
/ 01 апреля 2012

AssociationAttribute ничего не делает для кода структуры объекта в первую очередь для свойства навигации. Может показаться, что так оно и есть, но на самом деле это просто логика EF для создания базы данных.

...