C# 如何在事务范围内使用SQL成员资格(无DTC)?
我正在尝试使用SQL Express上的SQL成员资格提供程序创建用户。当我使用C# 如何在事务范围内使用SQL成员资格(无DTC)?,c#,asp.net-membership,sql-server-express,transactionscope,C#,Asp.net Membership,Sql Server Express,Transactionscope,我正在尝试使用SQL Express上的SQL成员资格提供程序创建用户。当我使用TransactionScope时,它会在没有明显原因的情况下提示DTC,我如何避免它 下面是我的示例代码: using (var ts = new TransactionScope()) { MembershipCreateStatus status; Membership.CreateUser(username, password, null, null, null, true, out stat
TransactionScope
时,它会在没有明显原因的情况下提示DTC,我如何避免它
下面是我的示例代码:
using (var ts = new TransactionScope())
{
MembershipCreateStatus status;
Membership.CreateUser(username, password, null, null, null, true, out status);
var userProfile = ProfileBase.Create(username);
userProfile.SetPropertyValue("Fullname", fullname);
userProfile.Save();
ts.Complete();
}
顺便说一句,我登录了reflector,每个会员资格SQL函数都会关闭其连接。您可以实现此函数,而无需按照建议进行事务。您链接中的答案(在forums.asp.net上显示为'Or Betzale')并没有回答问题……不是他,我是从SO发布此问题的,我是SharpOne.IMO,这并不能真正提供高质量的解决方案。如果配置文件保存失败,会发生什么情况?现在您有了一个没有个人资料记录的会员记录。必须有更好的方法…这并不能回答问题,请参见