gpt4 book ai didi

c# - 这是否适合使用交易来查找具有相同姓氏的最后一个人的序列号?

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:02:45 24 4
gpt4 key购买 nike

我需要生成一个包含三个姓氏数字的 ApplicantNumber,然后是具有该姓氏的人数。这是我的第一次尝试。我认为可序列化事务应该防止任何重复。会吗?

public string GenerateApplicantNumber(string surname)
{
using (new TransactionScope(TransactionScopeOption.RequiresNew, new TransactionOptions {IsolationLevel = IsolationLevel.Serializable}))
{
return string.Format("{0}{1}", surname.Substring(0, Math.Min(Regex.Replace(surname, @"\s+", "").Length, 3)),
_profileService.ReadApplicantProfiles().Count(p => !p.IsDeleted && p.LastName == surname));
}
}

最佳答案

这在某些情况下会产生冲突。

  • 假设您有两个同名“Foo”的申请人。
  • 申请人 1 将获得号码“Foo1”,申请人 2 将获得“Foo2”。
  • 现在您将申请人 1 的状态设置为已删除。
  • 名为“Foo”的第三位申请人进入系统。
  • 未删除的申请人数为2,因此第三个申请人也会得到编号“Foo2”,造成冲突。

关于c# - 这是否适合使用交易来查找具有相同姓氏的最后一个人的序列号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14478503/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com