2013-08-24 3 views
0

Я создаю модель, которая не имеет никакого отношения к другим таблицам с EF. , когда я добавляю его в контекстном и запустить приложение для создания базы данных я была ошибка в Заявке-старте:Ошибка MVc с EF

Один или несколько ошибок проверки обнаруженные в процессе генерации модели: System.Data.Edm.EdmEntityType:: EntityType У UrlHelper нет ключа. Определите ключ для этого EntityType. System.Data.Edm.EdmEntityType:: EntityType «RequestContext» не имеет ключа. Определите ключ для этого EntityType. System.Data.Edm.EdmEntityType:: EntityType 'HttpContextBase' не имеет определенного ключа. Определите ключ для этого EntityType. System.Data.Edm.EdmEntityType:: EntityType 'Exception' не имеет определенного ключа. Определите ключ для этого EntityType. System.Data.Edm.EdmEntityType:: EntityType «Тип» не имеет определенного ключа. Определите ключ для этого EntityType.

код в моем global.asax, как показано ниже:

public class MyInitializer 
: DropCreateDatabaseIfModelChanges<DBTa> 
    { 
    } 
    protected void Application_Start() 
    { 
     //for creating and initializing database 
     System.Data.Entity.Database.SetInitializer(new MyInitializer()); 
     **DBTa db = new DBTa();**//Error shows here 
     db.Database.Initialize(true); 
     // 

     AreaRegistration.RegisterAllAreas(); 

     RegisterGlobalFilters(GlobalFilters.Filters); 
     RegisterRoutes(RouteTable.Routes); 
    } 

но когда я удалил модель из приложения моя проблема решена, но мне нужна эта модель.

пожалуйста, помогите Большое спасибо

ответ

0

Вы должны установить свойство «ключ» в вашей 'UrlHelper' модели. Если вы сначала используете код EF - в вашей модели вы должны добавить атрибут [Key] к одному из своих свойств. Если вы используете первый подход к модели - в вашей модели вы должны пометить одно из свойств в качестве первичного ключа. Если вы используете первый подход к базе данных - вы должны создать первичный ключ в таблице.

+0

спасибо большое за вашу помощь, которую я использовал из кода first.but idont знаю, где я должен добавить ключ атрибута. Все классы имеют первичный ключ. – Raly

+0

Я решил свою проблему. я использовал (public class MyClass: controller), и это было неправильно, поэтому я изменил его на (public class MyClass). – Raly

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