C# 我应该使用什么事务隔离级别?

C# 我应该使用什么事务隔离级别?,c#,wcf,C#,Wcf,我正在编写一个WCF web服务,它允许在系统中注册新用户。因此,我有以下运营合同: [ServiceContract] public interface ISecurityService { /// <summary> /// Register new user in system, if no exceptions were thrown /// user was registered successfully /// </s

我正在编写一个WCF web服务,它允许在系统中注册新用户。因此,我有以下运营合同:

 [ServiceContract]
 public interface ISecurityService
 {
     /// <summary>
     /// Register new user in system, if no exceptions were thrown 
     /// user was registered successfully
     /// </summary>
     [OperationContract]
     [FaultContract(typeof(SecurityFaultException))]
     void Register(string userName, string password);
 }
[服务合同]
公共接口ISecurityService
{
/// 
///若未引发异常,则在系统中注册新用户
///用户已成功注册
/// 
[经营合同]
[FaultContract(类型(SecurityFaultException))]
无效注册表(字符串用户名、字符串密码);
}
这个想法很简单,如何同步
Register
方法调用以防止两个同名用户注册

我考虑过使用
IsolationLevel.Serializable
,但我不确定这个解决方案。有人能给我一个好的建议或分享一些关于WCF服务同步的好做法吗

更新:
我将用户保存在数据库中。

如果将用户保存在数据库中,使用默认的Isolationlevel(ReadCommitted)就足够了,只需在用户名列中添加一个唯一的约束或主键,以防止重复值。

为什么要序列化注册调用?(这是为了理解事务隔离需求的性质。)您将注册用户存储在哪里?在内存中还是在数据库中?我认为当UserName在数据库中有唯一的约束时就足够了。IsolationLevel不应该与Insert相关。我将用户存储在数据库中,当我谈到事务隔离级别时,我指的是数据库访问。谢谢你的建议。