【发布时间】:2018-07-10 06:01:42
【问题描述】:
我创建了一个 Web API 并使用 Entity Framework 6 进行 DB 操作,我有以下逻辑从 DB 获取数据。
<connectionStrings><add name="DB" connectionString="server=DESKTOP-DB; uid=sa;pwd=111111;database=EmpDB;" providerName="System.Data.SqlClient" /></connectionStrings>
public void SaveData(string data1, long data2){
DatabaseProviderFactory factory = new DatabaseProviderFactory();
Microsoft.Practices.EnterpriseLibrary.Data.Database db = factory.Create("DB");
DbCommand dbCommand = db.GetStoredProcCommand("EmpSave");
using (DbConnection connection = db.CreateConnection())
{
DbTransaction trans = null;
try
{
trans = connection.BeginTransaction();
db.AddInParameter(dbCommand, "@EMPID", DbType.Int64, data2);
db.AddInParameter(dbCommand, "@name", DbType.String, data1);
db.ExecuteNonQuery(dbCommand, trans);
trans.Commit();
}
catch (Exception ex)
{
trans.Rollback();
throw ex;
}
finally
{
trans.Dispose();
connection.Close();
}
}
}
现在我想使用动态连接字符串进行 DB 操作,意味着在请求中我将收到一个参数,根据参数值我将从 DB/XML 检索连接字符串并在 DB 操作中使用相同的字符串,因此将存储数据基于请求中收到的参数值。
关于如何使用上述逻辑实现这一点的任何想法?
【问题讨论】:
标签: c# asp.net-web-api entity-framework-6