С нуля я сделал новое решение с двумя проектами: один был MVC 3, а другой - поддерживающим EF 4.2 проектом. Все это строится успешно. Из проекта MVC я открываю диалог "Добавить контроллер" и генерирую код на основе контекста и модели, которые я выбираю из поддерживающего проекта EF. Диалог "добавить контроллер" завершается с сообщением:
Невозможно получить метаданные для "MyModelClass". Не удалось инициализировать систему конфигурации.
Я заметил, что диалог "добавить контроллер" на самом деле пытается получить строку подключения к базе данных из файла web.config. Во-первых, это выглядит как goofy-ish, так как в поддерживающем проекте EF уже есть app.config с строкой соединения. Но, не обращая внимания на это, самое лучшее, что я могу понять, это то, что строка подключения в web.config плохая. Это выглядит так:
<add name="Monsters2Entities"
connectionString="
metadata=res://*/Monsters.csdl|
res://*/Monsters.ssdl|
res://*/Monsters.msl;
provider=System.Data.SqlClient;
provider connection string="
data source=.;
initial catalog=Monsters2;
integrated security=True;
pooling=False;
multipleactiveresultsets=True;
App=EntityFramework
""
providerName="System.Data.EntityClient"
/>
В строке подключения фактически нет всех смешных разрывов строк и отступов - я просто пытаюсь сделать его более легким для чтения. Во всяком случае, эта строка соединения в основном идентична строке соединения, используемой в поддерживающем проекте EF, на котором он моделируется. Как мне исправить ситуацию, чтобы сделать "add controller" dialgoue счастливым?