4

Я использую Visual Studio Express 2013 для Интернета (в частности, версия 12.0.21005.1 REL). Это мой первый проект с использованием VS2013, я использовал VS2012 до этого момента.создать новый контроллер - ошибка работает генератор кода

Я пытаюсь создать новый контроллер в моем приложении MVC asp.net. Я использую Entity Framework 5 с первым кодом (.NET 4.5). Я хочу, чтобы Visual Studio создала для меня шаблон (вы знаете, контроллер с представлениями для чтения/записи/удаления и т. Д., Вместо того, чтобы писать код сам с нуля).

Однако каждый раз, когда я пытаюсь создать контроллер я получаю следующее сообщение об ошибке:

enter image description here

Есть ли какая-то ошибка в VS 2013? Я не могу понять, что это значит, и перезапуск VS2013 не помогает.

Вот подробности о gory .... на самом деле все это очень просто, так как это новый проект с очень маленьким кодом, написанным до сих пор.

Моя модель:

namespace ProfessionalSite.Models 
{ 
    public class EntityModels 
    { 

     public class Student 
     { 
      public int ID { get; set; } 
      public string LastName { get; set; } 
      public string FirstMidName { get; set; } 

      public virtual ICollection<Enrollment> Enrollments { get; set; } 
     } 


     public class Enrollment 
     { 
      public int ID { get; set; } 
      public string EnrollmentName { get; set; } 
      public string Credits { get; set; } 
     } 


     // Create the class that inherits from DbContext 
     // The name of this class is also used as the connection string in web.config 
     public class EFDbContext : DbContext 
     { 
      public DbSet<Student> Students { get; set; } 
      public DbSet<Enrollment> Enrollments { get; set; } 
      } 
    } 
} 

И в моем файле web.config У меня есть следующие

<add name="EFDbContext" 
     connectionString="Data Source=JONSNA\SQLEXP2012WT;Initial Catalog=ProfessionalSiteDb; Integrated Security=True; MultipleActiveResultSets=True" 
     providerName="System.Data.SqlClient"/> 

в тегах.

Теперь время для создания контроллера. Я нажимаю правой кнопкой мыши на контроллерах в обозревателе решений и выбираю «Добавить новый контроллер».

enter image description here

А потом

enter image description here

И когда я нажимаю Добавить я

enter image description here

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

Буду признателен за любую помощь или указатели. Благодарю.

+0

Лучше перестроить проект, прежде чем добавлять контроллер, чтобы избежать этой ошибки. Я закончил здесь, потому что была синтаксическая ошибка, и я не перестраивал и просто пытался добавить контроллер. –

ответ

1

Вам не нужно EntityModels класс, смотрите ниже:

namespace ProfessionalSite.Models 
{ 
     public class Student 
     { 
      public int ID { get; set; } 
      public string LastName { get; set; } 
      public string FirstMidName { get; set; } 
      public virtual ICollection<Enrollment> Enrollments { get; set; } 
     } 

     public class Enrollment 
     { 
      public int ID { get; set; } 
      public string EnrollmentName { get; set; } 
      public string Credits { get; set; } 
     } 

     // Create the class that inherits from DbContext 
     // The name of this class is also used as the connection string in web.config 
     public class EFDbContext : DbContext 
     { 
      public DbSet<Student> Students { get; set; } 
      public DbSet<Enrollment> Enrollments { get; set; } 
     } 
} 

Затем при создании контроллера, просто выберите Student или Enrollment для класса модели.

+0

Вы правы, я чувствую себя идиотом! Почему, черт возьми, мои классы завернуты в другой класс?!?! Я думаю, это произошло потому, что я копировал/вставлял код из одного проекта в другой и не потрудился фактически проверить синтаксис. Служит мне правильно ... Спасибо Лин. – Gary

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

  • Нет связанных вопросов^_^