c# - 如何保持循环法

标签 c# asp.net

我的数据库中存储了一些贷方。我应该说只有少数贷方,所以我可以轻松地缓存数据,而无需进行查找。

但是,当客户申请贷款时,我希望每次都按照逻辑顺序对不同的贷方进行第一次查找。例如:

贷方A 贷方乙 贷方 C

第一个客户再次查看贷方 A,第二个客户 B,第三个客户 C,第四个客户 A。

这背后的原因仅仅是为了在贷方之间平均分配潜在客户,如果每天大约重置一次计数器,那也不会是世界末日。

显然,我可以将此信息写入数据库 - 但这是不是太过分了?还有其他人需要实现类似的东西并提出更简单的解决方案吗?

感谢任何建议。

最佳答案

如果您存储了一个额外的列,其中包含最后一次选择贷方的日期时间,您可以修改贷方选择查询以返回最久以前选择的贷方。即,类似于:Lenders.OrderBy(x => x.LastSelected).First()

当然,您还必须在选择贷方后写回数据库。除非您在一个 SQL 查询中完成所有这些操作。像这样的东西(编辑:刚刚验证 - 效果很好):

UPDATE MyTable
SET LastSelected = GetDate()
OUTPUT INSERTED.*
WHERE Id = (SELECT TOP (1) Id FROM MyTable ORDER BY LastSelected)

关于c# - 如何保持循环法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16595598/

相关文章:

c# - page_load 和 onLoad 的区别

c# - 如何解决 "Failed to bind to address http://127.0.0.1:5000: address already in use."

c# - Windows 窗体 ComboBox - 不区分大小写的数据绑定(bind)

复杂 JSON 对象的 C# 数据协定

c# - 如何使用数据注释来验证输入的特定类型

asp.net - Javascript window.onunload 在 Page_Load 之后触发

c# - 如果我正在实现 IEquatable<T>,那么覆盖 Equals 是否重要?

c# - 控制风扇速度(CPU)

asp.net - 如何使用 ASP.NET 成员身份安全地存储服务密码?

c# - 拒绝输入重复字符的正则表达式