Есть приложение WinForms + entity-framework + MS SQL. Если задать всю строку подключения в app.config или если задать всю строку подключения в коде, то все работает.
class UserContext : DbContext
{
public UserContext()
: base("DBConnection")
{
Database.Connection.ConnectionString = "data source=server;Initial Catalog=test;Persist Security Info=True;User ID=test;Password=12345678";
}
public DbSet<User> Users { get; set; }
}
Но мне нужно взять строку подключения из app.config (в которой удален пароль) и в коде UserContext подставить пароль. Похожий ответ здесь, но не до конца понял, как подставить.
Для чего - чтобы совсем в открытом виде не хранить пароль (разбирать программу никто не будет, но в конфиге в открытом виде тоже храниться не хочется)
Дополнения после первого ответа: это строка в app.config
<add name="DBConnection" connectionString="data source=server;Initial Catalog=test;Persist Security Info=True;User ID={0};Password={1}"
так я выполнил добавление пароля в коде
base.Database.Connection.ConnectionString = string.Format(Database.Connection.ConnectionString, "test", "12345678");
такая получилось строка при наведении во время остановки Database.Connection.ConnectionString
"data source=server;Initial Catalog=test;Persist Security Info=True;User ID=test;Password=12345678"
Создал пустое приложение. Есть только класс
public class User
{
public int Id { get; set; }
public string Name { get; set; }
public int Age { get; set; }
}
Контекст
class UserContext : DbContext
{
public UserContext()
: base("DBConnection")
{
Database.Connection.ConnectionString = string.Format(Database.Connection.ConnectionString, "test", "12345678");
}
public DbSet<User> Users { get; set; }
}
И кнопка, где идет считывание таблицы
private void button1_Click(object sender, EventArgs e)
{
using (UserContext db = new UserContext())
{
var users = db.Users.ToList();
}
}
Как я понимаю: если в app.config есть строка подключения, то он берет её. Если её нет, то берет из Database.Connection.ConnectionString.
Database.Connection.ConnectionString =
string.Format("Password={0};data source=server;Initial Catalog=test;Persist Security Info=True;User ID=test",
"12345678");
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Хочу выполнить функцию DevicesDetect(), я знаю, что объявил её неверноWindows Forms не позволяет добавить модификаторы private или public к этой функции
Когда писал на с++ все говорили, что выбрасывать исключение в конструкторе это плохая идея, так как может создать утечку памяти, а что вы можете...
очень надеюсь на вашу помощьНа форме 8 picturebox загружаю в них картинки рандомно :
У меня есть база данных к которой я подключаюсь с помощью OleDbConnection(файл Microsoft Access, не спрашивайте почему, задание в универе такое дали)Нужно...