在开发办公软件的时候,须要给非常多文件什么的东西分配一个编号。是依照日期来的,比方2014.07.10的第一个文件编号就为20140710-1,这一天的第二个文件编号就为20140710-2,以此类推......

我在近期的编程开发中也遇到了类似的问题,常常好几次的改动,最终出来一下方法。较之改动前。这中方法的编号紊乱率大大减少,由于不可能在一个同样时间(精确到秒,甚至更小)。两个人同一时候操作。

不扯这些了,我这个仅仅是自己弄出来的一个方法,也希望大家能找到更好的方法。能全然解决两个人同一时候操作的问题,以下就直接上代码了

public string autoNum()
{
string serialnum = string.Empty;
string tyear = DateTime.Now.Year.ToString();
string tmonth = DateTime.Now.Month.ToString();
if (Convert.ToInt32(tmonth) < 10)
{
tmonth = "0" + tmonth;
}
string tday = DateTime.Now.Day.ToString();
if (Convert.ToInt32(tday) < 10)
{
tday = "0" + tday;
}
string prefixdate = tyear + tmonth + tday;
SqlHelp sqlx = new SqlHelp();
string strfacx = "select * from tLabelConfirm where SerialNumber like '%" + prefixdate + "%'";//tLabelConfirm是我的一个数据表。而SerialNumber是该表中的一个唯一字段,也就是文件编号
SqlDataReader drx = sqlx.ExecuteReader(strfacx);//代码中的数据表和字段。能够依据自己的实际情况而改动的哦
drx.Read();
if (drx.HasRows)
{
drx.Dispose();
sqlx.SqlClose();
string ser = string.Empty;
SqlHelp sqly = new SqlHelp();
string strfacy = "select top 1 * from tLabelConfirm where SerialNumber like '%" + prefixdate + "%' order by LabelID desc";
SqlDataReader dry = sqly.ExecuteReader(strfacy);
dry.Read();
if (dry.HasRows)
{
ser = dry["SerialNumber"].ToString();
}
dry.Dispose();
sqly.SqlClose();
string suf = ser.Substring(ser.IndexOf("-") + 1);
int suffix = Convert.ToInt32(suf) + 1;
serialnum = prefixdate + "-" + suffix.ToString();
}
else
{
drx.Dispose();
sqlx.SqlClose();
serialnum = prefixdate + "-" + "1";
}
return serialnum;
}

asp.net给文件分配自己主动编号,如【20140710-1】的更多相关文章

  1. Access中出现改变字段“自己主动编号”类型,不能再改回来!(已解决)

    Access中出现改变字段"自己主动编号"类型,不能再改回来! (已解决) 一次把access中的自增字段改成了数值,再改回自增时,提示:在表中输入了数据之后,则不能将不论什么字段 ...

  2. ASP.NET CORE使用WebUploader对大文件分片上传,并通过ASP.NET CORE SignalR实时反馈后台处理进度给前端展示

    本次,我们来实现一个单个大文件上传,并且把后台对上传文件的处理进度通过ASP.NET CORE SignalR反馈给前端展示,比如上传一个大的zip压缩包文件,后台进行解压缩,并且对压缩包中的文件进行 ...

  3. ASP。net 之view

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Index.aspx.cs&qu ...

  4. asp.net Lodop实现批量打印

    1.列表(前台) <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="w_stu ...

  5. asp.net lodop单个打印

    1.首先在列表页面增加以下代码 <%@ Page Language="C#" AutoEventWireup="true" CodeBehind=&quo ...

  6. Asp.net中GridView使用详解(引)

    GridView无代码分页排序GridView选中,编辑,取消,删除GridView正反双向排序GridView和下拉菜单DropDownList结合GridView和CheckBox结合鼠标移到Gr ...

  7. 031. aps.net中数据绑定控件两种添加自动编号的方法

    前端HTML代码: <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Defaul ...

  8. 刚刚开通博客,分享Asp.Net的GridView的基本用法

    包含有 数据的编辑,删除, 标题的添加,自定义分页,高亮显示鼠标所在,以及数据不足时添加空行 aspx页面代码 <asp:GridView ID="GridView1" ru ...

  9. 025. asp.net中GridView的排序和过滤

    前台HTML代码: <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Defaul ...

随机推荐

  1. JPA & Hibernate 注解

    1 . @Entity(name="EntityName") 必须 ,name 为可选 , 对应数据库中一的个表 2 . @Table(name="",cata ...

  2. Linux init 0-6 启动级别

    原文地址:http://blog.sina.com.cn/s/blog_5f8e8d9801010wlr.html 原文地址:[转]Linux init 0-6 启动级别作者:流水清风 init 0- ...

  3. UITabBarController 详解之 hidesBottomBarWhenPushed的正确用法

    今天说的是在TabBar嵌套Nav时,进行Push的时候隐藏TabBar的问题. 之前项目也需要这么做,那时候iOS7还没出,也是各种搜罗,后来的解决方法是当push操作的时候自己隐藏Tabbar,p ...

  4. Atlassian JIRA Change IP

    Oracle Linux 6.8 Atalssian JIRA 7 原来IP: 192.168.10.200 改新IP: 192.168.12.200 重新跑应用报错,如下所示: 官方提示应用连接不上 ...

  5. Android项目更换开发环境时出现的 java.lang.VerifyError 异常解决办法

    from://http://blog.csdn.net/wudiwo/article/details/7548451 项目是从同事的电脑上直接拷贝过来的,项目里面的jar包是在项目跟下libs里面存放 ...

  6. 用代码获取APP启动页图片

    用代码获取APP启动页图片 源码 - swift // // AppleSystemService.swift // Swift-Animations // // Created by YouXian ...

  7. Java并发编程的艺术(十一)——线程池(2)

    Executor两级调度模型 在HotSpot虚拟机中,Java中的线程将会被一一映射为操作系统的线程. 在Java虚拟机层面,用户将多个任务提交给Executor框架,Executor负责分配线程执 ...

  8. 我的Java学习推荐书目

    一直有这么个想法,列一下我个人认为在学习和使用Java过程中可以推荐一读的书籍,给初学者或者想深入的朋友一些建议,帮助成长.推荐的的都是我自己读过,也会推荐一些朋友读过并且口碑不错的书籍. 一.基础类 ...

  9. sklearn中SVM调参说明

    写在前面 之前只停留在理论上,没有实际沉下心去调参,实际去做了后,发现调参是个大工程(玄学).于是这篇来总结一下sklearn中svm的参数说明以及调参经验.方便以后查询和回忆. 常用核函数 1.li ...

  10. Windows8、Windows8.1使用便签工具

    Windows8.8.1没有了小工具,但是很多小工具实际上还是存在的,便签就是常用的小工具之一,既然系统自带就不用在安装第三方的了,使用方法: 启动或显示 Sticky Notes : Win+R-- ...