В EF CTP 5 отсутствует ключевой атрибут - PullRequest
4 голосов
/ 01 января 2011

Согласно сообщению в блоге здесь Аннотации данных в Entity Framework должен быть атрибут для столбца с именем «Ключ», который позволяет пометить первичный ключ объекта. Однако я не могу найти это в .Net 3.5 или .Net 4.0.

Что я пропустил? Я включил ссылку на EntityFramework.dll и проверил все атрибуты в System.ComponentModel.DataAnnotations, но не могу найти его. alt text

Я установил свой проект на .Net 4.0 full (не в профиле клиента).

Есть идеи?

Ответы [ 2 ]

15 голосов
/ 01 января 2011

Атрибут KeyAttribute предназначен только для .NET 4 и находится в сборке System.ComponentModel.DataAnnotations, поэтому убедитесь, что вы на него ссылались.

6 голосов
/ 30 июня 2011

Возможно, ваш проект не ориентирован на Framework 4.0, поэтому при добавлении ссылки System.ComponentModel.DataAnnotations он не будет соответствовать версии 4.0, то есть версии с определением «Key».

Попробуйте удалить текущую ссылку DataAnnotation, затем измените целевую структуру проекта (щелкните правой кнопкой мыши проект -> Свойства -> Приложение -> Target Framework) на .Net 4.0, а затем снова добавьте ссылку на DataAnnotations. Работал на меня;)

...