Как создать динамическую базу данных в рамках сущности с указанным путем?
В настоящее время я создаю динамическую базу данных, используя метод CreateDatabase() в Entity Framework. он успешно выполняется и создает базу данных по следующему пути:"c: \ Program Files \ Microsoft SQL Server \ MSSQL10.SQLEXPRESS \ MSSQL \ DATA", но я хочу создать базу данных в каталоге моего приложения. как это сделать? Помогите мне, пожалуйста.
1 ответ
Обычно все базы данных создаются по пути по умолчанию, настроенному в SQL Server. Только если вы используете SQL Server Express и определяете строку подключения, которая указывает базу данных, которая будет создана в вашей папке данных, она будет использовать вашу папку приложения. Это будет работать только с SQL Server Express. Убедитесь, что внутренняя часть строки подключения выглядит следующим образом:
Server=.\SQLExpress;AttachDbFilename=|DataDirectory|\YourDbFile.mdf;Database=YourDbName; Integrated Security=SSPI;
куда |DataDirectory|
заполнитель, который будет заменен путем к вашему каталогу данных. Для веб-приложения это должен быть App_Data, а для автономных приложений - папка приложения. Вы также можете использовать любой путь непосредственно в строке подключения или управлять разрешением DataDirectory из кода с помощью:
AppDomain.CurrentDomain.SetData("DataDirectory", YourPath);