我的数据库中存储了一些贷方。我应该说只有少数贷方,所以我可以轻松地缓存数据,而无需进行查找。
但是,当客户申请贷款时,我希望每次都按照逻辑顺序对不同的贷方进行第一次查找。例如:
贷方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/