c# - 如何在 asp.net 中使用日期和整数作为发票号

标签 c# asp.net sql-server

我正在做一个发票编号应该打印为

的项目
(ddMMYYYY)+(Int)

例如

07072015001
07072015002
....
07072015110

等等。

我正在使用 asp.net (C#) 和 SQL Server 作为后端。

请帮忙。

最佳答案

假设您有一个 Invoice 表,它至少包含 InvoiceID(int identity)和一个 InvoiceDate(数据类型为 DATE),那么您可以轻松地向表中添加一个计算的持久化列:

ALTER TABLE dbo.Invoices
ADD InvoiceNo AS REPLACE(CONVERT(VARCHAR(10), InvoiceDate, 104), '.', '') + 
    RIGHT(REPLICATE('0', 6) + CAST(InvoiceID AS VARCHAR(6)), 6) PERSISTED

因此,如果您的表中有几行,InvoiceNo 将由 SQL Server 自动填充,如下所示:

enter image description here

此列可以像任何其他列一样使用和读取 - 它不能由您设置(SQL Server 将在插入新行或更新现有行时自动为您设置)

关于c# - 如何在 asp.net 中使用日期和整数作为发票号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31261595/

相关文章:

c# - ListView 项目绑定(bind)

c# - asp.net 中的 View 状态和自定义控件

c# - 使用 EditURL() 或 NavigateURL() 在 DotNetNuke 模块控件之间导航

sql - T-SQL 四舍五入到小数位

c# - C#中SQL Server存储过程的异步调用

sql - 如何向表中插入N行默认值

c# - 如何使用 C# 将 AccessKey 值传递到 Azure SignalR 服务器?

c# - 如何将自定义转换器应用于 YamlDotNet 中的属性

asp.net - jquery ajax 方法中的无效 JSON 原语 : error when get the post values in asp.net

c# - 在 Global.asax.cs 中注册类