ArgumentException не обработан - PullRequest
1 голос
/ 31 октября 2010

Вот скриншот ошибки:

alt text

Сама ошибка:

Указанное именованное соединение либо не найдено в конфигурации, не предназначено для использования с поставщиком EntityClient, либо недействительно.

Переходя к файлу app.config того же проекта, я могу найти:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <connectionStrings>
    <add name="DocumentsEntities" connectionString="metadata=res://*/Documents.csdl|res://*/Documents.ssdl|res://*/Documents.msl;provider=System.Data.SQLite;provider connection string='data source=&quot;D:\Programming Projects\Desktop Applications\C#\DocumentScanner\DAL\Documents.sqlite&quot;'" providerName="System.Data.EntityClient" />
  </connectionStrings>
</configuration>

Строка подключения существует, но я получаю эту ошибку.

Я использую SQLite и .NET Framework 3.5.

Есть предложения?

1 Ответ

0 голосов
/ 31 октября 2010

Вы видели этот ответ?Это помогает?

http://social.msdn.microsoft.com/forums/en-US/adodotnetentityframework/thread/f5904b4d-b2f8-421e-90de-339f93959533/

Цитата:

Мое единственное предположение, что app.config не находится в двоичном каталоге, где находится exe.Пожалуйста, сделайте следующее: 1. Визуально убедитесь, что app.config с ожидаемым содержимым находится в каталоге, где скомпилирован exe.(Наличие в корневом каталоге проекта недостаточно.) 2. Используйте System.Configuration.ConfigurationManager из вашего приложения, чтобы проверить содержимое файла app.config, который использует ваш exe-файл.Я также смотрю на содержимое строки подключения и могу сказать, что она может не работать в многопроектной среде (если вы не дублировали EDM в каждом проекте).Причина этого заключается в том, что «.» Разрешает каталог, из которого загружается исполняемый файл.Если вы хотите повторно использовать тот же EDM, вам по крайней мере необходимо сделать несколько шагов назад по пути и затем перейти к проекту, в котором находится EDM, например «...... \ Proj1 \ AdventureWorksModel».Кроме того, вы можете рассмотреть возможность использования | DataDirectory |макрос - при загрузке домена приложения вы можете установить | DataDirectory |указать точный каталог, в котором находится EDM, а затем использовать его в строке подключения, например,

«| DataDirectory | \ AdventureWorksModel».Если вы работаете над проектом ASP.NET, вы можете использовать «~», который относится к корню проекта.В последнем случае вы не можете ссылаться на модель вне иерархии вашего проекта.

Zlatko Michailov Program Manager, 

Возможность программирования данных Microsoft Corp.

...