如何生成一个独特的ID?

时间:2015-07-05 14:20:18

标签: c#

我需要获得身份证的独特性。即使有一万亿分之一的机会出现欺骗,我也无法使用它。

但我真的不想到地球的尽头寻找解决方案。我花了一些时间研究这个问题,到目前为止我找到的所有东西都无法给我一个独特的身份证。

所以我想我会用一些非常简单的东西,比如:

    public static string GenerateItemID()
    {
        string year = DateTime.Now.Year.ToString(), 
            month = DateTime.Now.Month.ToString(), 
            day = DateTime.Now.Day.ToString(), 
            hour = DateTime.Now.Hour.ToString(), 
            minute = DateTime.Now.Minute.ToString(), 
            second = DateTime.Now.Second.ToString(), 
            millisecond = DateTime.Now.Millisecond.ToString();

        return year + month + day + hour + minute + second + millisecond;
    }

我的逻辑是:生成的每个新UI都不可能与之前的任何UI相同。但后来我想知道PC是否可以在同一毫秒内生成两个或更多这些ID?当然,我然后在Intellisense中寻找Nanosecond属性,但它不存在。

如何生成 garunteed 的ID是唯一的?

2 个答案:

答案 0 :(得分:3)

locale.on('click', function(e) {
    $("#music").attr("src", prop.Url);
    $(".player").show();
    play();
    sendWithAjax(prop.Country, prop.City);
    $("h1").html(prop.Station);
    $("h2").html(prop.Country);
    $("h3").html(prop.City);
    //console.log($(this).css("transform"));
    //console.log($(this).attr("style"));

    console.log($(this));

    setTimeout(function(){ $("h4").html(globalVar);}, 500);

    $(".plusB").show();
    $(".shareB").show();

    map1.setView(locale.getLatLng(), 4);
    playNow = prop.Station;
    playNowCountry = prop.Country
    playNowCity = prop.City;

});  

我相信这会创造一个相当独特的身份。

答案 1 :(得分:1)

让我们使用GUID。

请参阅此处:https://msdn.microsoft.com/en-us/library/system.guid.newguid(v=vs.110).aspx

希望得到这个帮助。