我有一个情况,我有 2 个数据库。
经理有公司表,基于这个值我必须创建一个新的数据库。
所以我正在使用 TransactionScope。我想知道以下是否正确?
这会回滚这两个变化吗?如果发生错误,在两个数据库中?
using (TransactionScope ts = new TransactionScope())
{
try
{
using(var ManagerContext = new ManagerEntities(
ConnectionStringManager.GetManagerConnectionString()))
{
//Operations on Manager DB
// Create new Company and get NEWCOMPANYID
// -- Used to create new DB
}
using(var companyContext = new CompanyEntities(
ConnectionStringManager.GetCompanyConnectionString(
NEWCOMPANYID.ToString())))
{
//Create New Company DB
}
ts.Complete();
}
catch (Exception ex)
{
ts.Dispose();
}
}