Как создать общий путь к файлу c к локальной базе данных в приложении C#? - PullRequest
0 голосов
/ 26 апреля 2020

У меня есть простой ввод данных Windows Форма с отображением сетки данных, которая ссылается на локальную базу данных. Когда я запускаю программу и пытаюсь добавить данные на другом компьютере, я получаю следующее сообщение:

Произошло необработанное исключение в вашем приложении. Если вы нажмете «Продолжить», приложение проигнорирует эту ошибку и попытается продолжить. Если вы нажмете Quit, приложение закроется немедленно.

Попытка присоединить базу данных с автоматическим именем для файла C: \ Users \ roberto.yepez \ Documents \ Visual Studio \ 2010 \ Проекты \ Калькулятор финансовой помощи \ Калькулятор финансовой помощи \ StudentInfo1.mdf. База данных с тем же именем существует, или указанный файл не может быть открыт, или он находится на общем ресурсе UN C. "

Путь к файлу - это путь на компьютере, на котором я закодировал программа.

Вот мой код:

SqlConnection conn = new SqlConnection(@"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename='C:\Users\roberto.yepez\Documents\Visual Studio 2010\Projects\Financial Aid Calculator\Financial Aid Calculator\StudentInfo1.mdf';Integrated Security=True".ToString());

Я кодер-самоучка, пожалуйста, помогите! :)) 1014 *

Ответы [ 2 ]

1 голос
/ 26 апреля 2020

Я полагаю, что вы столкнулись с проблемой, потому что ваш локальный сервер sql, к которому ваш код пытается присоединить StudentInfo1.mdf (путь которого находится в строке подключения), уже содержит базу данных с именем StudentInfo1 - он решил попробуйте создать базу данных с этим именем на основе имени файла mdf. Я предполагаю, что вы можете выбрать свое собственное имя, указав Initial Catalog в вашей строке подключения, но это будет означать, что есть две базы данных, возможно, с одинаковым набором таблиц и возможностью путаницы

За комментарий, который я разместил Вместо этого я бы рекомендовал вам использовать SQL Server Management Studio для постоянного подключения вашей БД (вы уже сделали это), а затем настроить строку подключения так, чтобы она ссылалась на постоянно подключенную БД. Это снижает вероятность того, что вашим следующим вопросом будет «мой код говорит, что он обновляет мою базу данных, но я не вижу никаких изменений!?»

0 голосов
/ 26 апреля 2020

Переместите эту строку подключения

"Источник данных = (LocalDB) \ MSSQLLocalDB; AttachDbFilename = 'C: \ Users \ roberto.yepez \ Documents \ Visual Studio 2010 \ Проекты \ Калькулятор финансовой помощи \ Калькулятор финансовой помощи \ StudentInfo1.mdf '; Integrated Security = True "

до файл app.config . При развертывании в производство измените пути в этом app.config в соответствии с настройками рабочего компьютера.

Вы даже можете применить преобразования в app.config для развертывания на различных машинах / в сценарии ios.

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