我收到“服务器上的MSDTC'ADMIN-PC \ SQLEXPRESS'不可用”以下代码中的错误
客户类:
public class Customer
{
public int Id;
public string CustomerName;
public string CustomerID;
}
导致错误的控制器的操作:
public ActionResult CreateCustomerLogins()
{
List<Customer> customer = new List<Customer>;
customers = c.GetCustomerList(); // returns List<Customer>
try
{
using (TransactionScope scope = new TransactionScope())
{
foreach (Customer item in customers)
{
WebSecurity.CreateUserAndAccount(item.CustomerName, item.CustomerID);
}
scope.Complete();
}
}
catch (TransactionAbortedException tae)
{
ModelState.AddModelError("Error", "Error generating customer logins.");
}
return Json(new { });
}
我的代码出了什么问题?
答案 0 :(得分:1)
SQL Express不直接支持MSDTC。
看看这是否有帮助:
http://www.learningpenguin.net/myblog/2008/03/12/msdtc-on-server-sqlexpress-is-unavailable/
完全启用MS DTC:
1.在“控制面板”中,打开“管理工具”,然后双击“组件服务”。
2.在“控制台根”的左窗格中,单击“组件服务”,然后展开“计算机”。
3.右键单击“我的电脑”,然后单击“属性”。
4.在MSDTC选项卡上,单击安全配置。
5.在“安全设置”下,选中所有复选框。
6.验证DTC登录帐户名称设置为NT AUTHORITY \ NetworkService