我有一个 web API 项目,它引用了我的模型和 DAL 程序集。用户会看到一个登录屏幕,在那里他可以选择不同的数据库。
我按如下方式构建连接字符串:
public void Connect(Database database)
{
//Build an SQL connection string
SqlConnectionStringBuilder sqlString = new SqlConnectionStringBuilder()
{
DataSource = database.Server,
InitialCatalog = database.Catalog,
UserID = database.Username,
Password = database.Password,
};
//Build an entity framework connection string
EntityConnectionStringBuilder entityString = new EntityConnectionStringBuilder()
{
Provider = database.Provider,
Metadata = Settings.Default.Metadata,
ProviderConnectionString = sqlString.ToString()
};
}
首先,我实际上如何更改数据上下文的连接?
其次,因为这是一个 web API 项目,所以连接字符串(设置在以上每次登录时)是否在整个用户交互过程中持久存在,还是应该每次都将其传递给我的数据上下文?