ключ не определен EntityFramework CTP5 - PullRequest
0 голосов
/ 10 февраля 2012

Я использую MVC3 с EntityFramework CTP5, SQL Server 2008

Я не верю, что это проблема, но я могу упомянуть ее.Поскольку я ленивый, я создал Linq to SQL, скопировал определения свойств и вставил в мою собственную модель, а затем удалил файл dbml.

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

Я добавил аннотацию [key].

[Key]
public System.Guid FormID;

Я все еще получаю эту ошибку.

System.Data.Entity.ModelConfiguration.ModelValidationException: One or more validation errors were detected during model generation: 
System.Data.Edm.EdmEntityType: : EntityType 'FormInfo' has no key defined. Define the key for this EntityType.
System.Data.Edm.EdmEntitySet: EntityType: The EntitySet FormInfoes is based on type FormInfo that has no keys defined.

Я заметил, что«FormInfo» устанавливается в EntitySet на «FormInfoes».Итак, я добавил это к своему контексту

protected override void OnModelCreating(ModelBuilder modelBuilder)
{
    modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
    base.OnModelCreating(modelBuilder);
}

Я инициализировал контекст.

DbDatabase.SetInitializer<SQLServerContext>(null);

Поскольку БД уже есть, я не хочу создавать ее заново или удалять.

Спасибо за помощь!

1 Ответ

1 голос
/ 10 февраля 2012

Вы определили поле. Не собственность. Измените объявление на свойство

[Key]
public System.Guid FormID { get; set; }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...