entity-framework - 发票号码生成 - 使用序列号或可用的替代品?
问题描述
我需要使用用户指定的格式生成发票编号。发票号有两个元素,一个字母前缀,然后是一个序号。例如 INV/0001、INV/0002。
该要求规定发票编号中不应有空白,并且用户可以指定起始发票编号。我们的堆栈是带有 SQL Server 的 EF Core 和 .NET 5。我考虑过的选项;
- 使用序列号:这将是最简单的解决方案,但不允许我没有间隙(如果事务回滚,数字中会有间隙吗?)
- 使用表格上的一列来保存前缀和下一个发票编号:更多工作,但允许我创建发票并分配发票编号并在一次交易中增加发票编号。如果多个用户同时创建发票,可能会出现锁定问题?
解决方案
推荐阅读
- javascript - 单击单击此处选项时,弹出框在动态表中不起作用
- .net - 如何将 Google Admob 集成到 .NET 6 android 应用程序中?
- next.js - 在 AWS 上托管时,@next/image 图像出现 500 内部服务器错误 #27453
- sveltekit - 如何用 .env (dotenv-flow) 用 svelte-kit 替换字符串?
- python - 在numpy中设置数组滑动窗口的值
- javascript - 如何在 django 中渲染 .astro 文件
- augmented-reality - 在 ARKit 中,我可以选择任何现实世界的对象来绑定虚拟对象,使用深度图或其他技术吗?
- html - 如何使用 css 更改文本框大小?以及如何将我的 css 文件与我的 html 文件连接起来
- c# - 使用 RichTextBox 中的索引突出显示阿拉伯语单词?
- html - 将自定义 svg 列表项项目符号与文本垂直对齐