MVC3: невозможно получить метаданные для моего класса модели, когда я хочу получить данные модели от контроллера

Я новичок в платформе asp.net MVC3. Я следую учебнику, который размещен на веб-сайте asp.net: http://www.asp.net/mvc/tutorials/getting-started-with-aspnet-mvc3/getting-started-with-mvc3-part1-cs

Но на пятом шаге, который мне нужен для доступа к данным моего класса модели с контроллера, я столкнулся с некоторыми проблемами, я создал класс модели и класс контекста, но когда я хочу создать класс контроллера с использованием шаблона лесов (контроллер с действиями и представлениями чтения/записи с использованием рамки сущностей), это дает мне ошибку, как показано ниже:

невозможно получить метаданные для "полного имени моего класса моделей". Не удалось инициализировать систему конфигурации

Ответ 1

Просто измените тип поставщика строки подключения на System.Data.SqlClient

Ответ 2

Нет ошибок. Просто вам нужно следовать хронологическому порядку, чтобы отразить структуру модели и быть перенесенным в базу данных и не иметь ошибок:

  • Создайте контроллеры (не включите еще строки подключения в Web.config или вы получите указанную ошибку.)
  • Добавьте строку подключения в Web.config с тем, что написано в учебнике.
  • Наконец, запустите приложение.

ПРИМЕЧАНИЕ.. Не создавайте вручную компактную базу данных, так как Visual Studio будет автоматически создавать и отображать ее для вас вместе с модельной структурой при ее запуске и перейти к этому контроллеру в вашем браузере. Просто убедитесь, что у вас есть правильный путь к базе данных в Web.config. Надеюсь это поможет! С наилучшими пожеланиями.

Ответ 3

Попробуйте этот...

<add name="MovieDBContext" connectionString="data source=.\SQLEXPRESS;&#xD;&#xA;         Integrated Security=SSPI;&#xD;&#xA; AttachDBFilename=|DataDirectory|\MVCtest.sdf;&#xD;&#xA;         User Instance=true" providerName="System.Data.SqlClient" />

Ответ 4

Я изменил имя поставщика в System.Data.SqlClient, как это было предложено в другом андрее. Это позволило мне создать контроллер на шаге добавления контроллера. Но приложение не будет отображать ресурс фильмов вообще, когда я его запустил. Затем я изменил его обратно на System.Data.SqlServerCe.4.0, как в учебнике, и все сработало.

После прочтения других обсуждений в Интернете я нашел другой метод.

Если вы не добавляете строку подключения до тех пор, пока не создадите класс контроллера, она также будет работать. Это похоже на ошибку.

Ответ 5

Убедитесь, что вы добавили строку подключения в правильный файл web.config, потому что там 2 (один на уровне решения и другой на уровне представления). Вы хотите добавить его на уровне представления. Ваш материал crud будет создан только отлично после того, как вы исправите строку подключения, затем создайте контроллер. Спасибо, Морис Маглалан