首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >C#.net中用户的字母数字8位唯一标识

C#.net中用户的字母数字8位唯一标识
EN

Stack Overflow用户
提问于 2014-06-05 07:09:15
回答 2查看 283关注 0票数 0

我想要做的是,我已经创建了一个asp.net web应用程序,现在我正在使用来保存我的数据(我不使用SQL),我的下一个任务是为用户生成一个唯一的8位字母数字Id,用户将来将使用它来跟踪那里的请求。

我得到了这个ID的一种特殊格式,所以我不能使用GUID。

给出的格式如下:

  • PR000000(PR代表项目)
  • NP000000(NP代表非项目)

因此,前两个字母将根据用户条目(如果是项目采购请求,则选择'PR'和非项目采购请求( 'NP') )和rest 6位数是将不断增加的简单整数(000001,000002,000003.999999)。

我到处搜索了很多东西,但都是关于php、惟一代码、GUID等的,但是我只想要一个简单的代码来轻松地执行上面的任务,比如IF-count语句+继续增加计数(000001.000002.)

--这是项目和非项目选择的代码:

代码语言:javascript
复制
PROJECT<input type="radio" name="portal" id="radio1" onclick="changeMe(this);"/>  <input       type="text" name="textprojectOff" id="text1" value="Project Name" onclick="changeMe(this);"/>
NON-PROJECT<input type="radio" id="radio2" name="portal" onclick="changeMe(this)"/> &nbsp; <input type="text" name="textnonprojectOff" id="text2" value="Department" onclick="changeMe(this);"/>
<script type="text/javascript"  >
 function changeMe(inField) 
{
    var fieldId = inField.id;
    var type = fieldId.substring(0, 4);

    if (type == 'text') {
        var name = fieldId.substring(4);
        var radioButton = document.getElementById("radio" + name);
        radioButton.checked = true;
    } else {
        var name = fieldId.substring(5);
        var textField = document.getElementById("text" + name);
        textField.focus();
        textField.value ='';
    }
}

如果有人需要我的xml代码来帮助我,那么请在评论部分告诉我,我会在那个时候发布它。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-06-20 11:06:27

在这里,我得到了我自己的问题的解决方案,所以,我想与大家分享它,以便其他人可以从它得到帮助。没有使用任何典型的函数,我为每个用户生成了一个唯一的Id .

.cs编程:

代码语言:javascript
复制
 protected void GetId()
    {
        MSXML2.DOMDocument objXML = new MSXML2.DOMDocument();
        string oPath = null;
        oPath = Server.MapPath("PARNId.xml");
        XmlDocument doc = new XmlDocument();
        if (objXML.load(oPath) == true)
        {
            objNextId = objXML.selectSingleNode("//Id").text;

        }
    }

    protected void SetId()
    {
        MSXML2.DOMDocument objXML = new MSXML2.DOMDocument();
        string oPath = null;

        oPath = Server.MapPath("PARNId.xml");
        XmlDocument doc = new XmlDocument();
        if (objXML.load(oPath) == true)
        {
            objXML.selectSingleNode("//Id").text = objNextId;
        }
        if (RadioButton2.Checked == true)
        {
            Label1.Text = "Your PURCHASE ACTION REQUEST NUMBER Is : PR" + objNextId;

        }
        else
        {
            Label1.Text = "Your PURCHASE ACTION REQUEST NUMBER Is :NP" + objNextId;
        }
        objXML.save(oPath);
    }  

调用两个函数

代码语言:javascript
复制
GetId();
        Label1.Text = objNextId;
        objNextId = Convert.ToString(Convert.ToInt32(objNextId) + 1);
        SetId()  

我已经创建了一个名为Track.xml的独立XML文件,在其中我分配了一个节点100000,这个节点在每个请求中都在递增,最后我保存了标签1文本,并保存了与每个用户希望一起生成的所有PARN的记录--它帮助他人!!

票数 0
EN

Stack Overflow用户

发布于 2014-06-05 07:16:02

根据您的需求,您必须在检查数据库中的现有值之后,从服务器端代码中生成唯一的in。

如果需要,可以使用Oracle序列。在这种情况下,不应该使用客户端生成,因为有一个更改,多个用户可以获得相同的唯一id。因此,这个生成应该由服务器端/数据库端处理。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24053801

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档