0

У меня есть 2 проекта в решении - одна библиотека классов с объектами для базы данных (с использованием EF), одна для Winforms.с использованием | DataDirectory | в connectionstring многопроектного решения

Строка соединения в app.config приложения Winforms, и она работает правильно:

<add name="LibraryContext" 
    connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\MyLibrary.mdf;Integrated Security=True; " 
    providerName="System.Data.SqlClient"/> 

Но когда я пытаюсь обеспечить миграцию, я получаю сообщение об ошибке:

A file activation error occurred. The physical file name '\MyLibrary.mdf' may be incorrect. Diagnose and correct additional errors, and retry the operation.

Когда я обеспечить полный путь в строке соединения, все работает нормально. Я предполагаю, что проблема в DataDirectory. Проект с сущностями для базы данных не видит его или может видеть его как собственный DataDirectory, а не тот, который для запуска проекта (Winforms).

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

+0

Вы делаете миграции в сборке доступа к данным, он требует app.config своего собственного для этого. –

+0

, но он работает, когда у меня есть полный путь для базы данных в проекте WinForms. – jspirit

ответ

0

Попробуйте эту надежду, это сработает.

Перейдите на вкладку «Настройка закладки проекта». Если вы добавляете более одной строки соединения, удалите ее. и добавьте строку подключения, которая у вас есть в конфигурации приложения.

Спасибо.

Счастливого Coding :)

+0

не помог, когда путь содержит | DataDirectory |, работает только полный путь. – jspirit

+0

Это не отвечает на вопрос. В лучшем случае это предложение, которое должно быть комментарием. –

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