Прерових интернет, за да се опитам да конфигурирам правилно низа за свързване на App.config за приложение на Windows Forms, без резултат.
Ето първия ми опит да свържа приложението си с базата данни:
private static string CONNECTION_STRING =
@"Data Source=(LocalDB)\v11.0;AttachDbFilename=D:\Visual Studio 2013\Projects\Test\Test\MyDatabase.mdf;Integrated Security=True;Connect Timeout=30";
Този низ за свързване работи чудесно при стартиране на програмата на моята локална машина, но не успя да се стартира на друга. Реших, че е заради абсолютния път, включен в низа за връзка. След като разгледах много теми относно файла App.config, добавих препратката System.Configuration
и също така добавих следното към съответните им секции в кода Form1 и App.config:
В моя Form1.cs:
using System.Configuration;
private static string CONNECTION_STRING = ConfigurationManager.ConnectionStrings["TestConnectionString"].ConnectionString;
В моя файл App.config:
<connectionStrings>
<add name="TestConnectionString" connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\MyDatabase.mdf" providerName="System.Data.SqlClient"/>
</connectionStrings>
При опит за стартиране на програмата получавам следната грешка:
Неуспешен опит за прикачване на автоматично именувана база данни за файл D:\Visual Studio 2013\Projects\Test\Test\bin\Debug\MyDatabase.mdf. Съществува база данни със същото име или посоченият файл не може да бъде отворен или се намира в UNC дял.
Прочетох, че |DataDirectory| включен в connectionString е само за уеб приложения, но също така прочетох коментари от потребители, които са имали успех в своите Windows приложения, използвайки го точно както се опитах.
Какво ми липсва тук? Как да настроя моя connectionString в моя App.config файл, така че това приложение да има достъп до базата данни, независимо от коя машина стартирам изпълнимия файл?
Благодаря ви за всяка помощ!