Достигнута ошибка после создания классов структуры сущностей с помощью инструмента edmgen - PullRequest
0 голосов
/ 20 мая 2010

Сначала я прочитал этот вопрос , но эти знания не помогли решить мои проблемы.

Сначала я создал файл edmx от Visual Studio. Созданные файлы с именами:

  • uqsModel.Designer.cs
  • uqsModel.edmx

Эти файлы находятся в папке App_Code.

И мое веб-приложение работает нормально. В Web Config автоматически генерируется строка подключения.

<add name="uqsEntities" connectionString="metadata=res://*/App_Code.uqsModel.csdl|res://*/App_Code.uqsModel.ssdl|res://*/App_Code.uqsModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=aemloviji\sqlexpress;Initial Catalog=uqs;Integrated Security=True;MultipleActiveResultSets=True&quot;" providerName="System.Data.EntityClient" /></connectionStrings>

Затем мне пришлось генерировать классы с помощью инструмента edmgen tool (режим полной генерации). Созданы новые файлы с именами:

  • uqsModel.cs
  • uqsModel.csdl
  • uqsModel.msl
  • uqsModel.ssdl
  • uqsViews.cs

он сохраняет новые классы в папку, где ранее находились файлы edmx, и удаляет существующие файлы edmx. И когда страница перенаправляет на любую веб-страницу, код на стороне сервера не работает. И проблема: Невозможно загрузить указанный ресурс метаданных .

Немного идеи, пожалуйста.

1 Ответ

1 голос
/ 20 мая 2010

Проблема, по-видимому, связана с тем, что вы сгенерировали метаданные в форме файлов .csdl, .ssdl и .msl, а строка подключения указывает на ресурс, который должен быть встроен в dll проекта ( скорее всего будет недоступен на вашем веб-сайте).
Решение состоит в том, чтобы исправить путь к метаданным следующим образом:

metadata=~\App_Code\uqsModel.csdl|~\App_Code\uqsModel.ssdl|~\App_Code\uqsModel.msl

Более подробная информация доступна здесь .

...