在ASP.NET中创建GUIDa

王朝厨房·作者佚名  2007-01-04
窄屏简体版  字體: |||超大  

基础知识

GUID代表全球唯一识别符。正如名字所表示的,这些数字从统计上来说是唯一的,这就意味着在全世界不会有两个GUID完全相同。这是为什么呢?

一个 GUID是一个128位的数字,通常用一个32位的十六进制字符串来表示,就象这样:3e4dab67-ac0b-47cc-b1cf-40f93324350f

两个GUID相等的几率是 1/2128 ,几乎为0。

由于它们的唯一性,GUID可以被用在需要唯一关键字的应用程序中,但是这种情况下的关键字是不能组合起来生成一个关键字。

举例来说,你想跟踪站点的访问者。如果不向访问者询问一些问题,就不可能生成含有他们行动信息的表格关键字。只有当你拥有了他们的识别信息,如电话号码等,才能做到。在没有这些信息的情况下,你可以使用一个唯一数字,如计数器,作为关键字。要想使这个 ID不可复制,就可以使用GUID。 用计数器的话,会有数字被复制的可能,比如复位了计数器,但是使用GUID,就没有这种可能。

在ASP.NET创建GUID

在ASP时代,要生成GUID必须要依靠一个外部COM 组件或SQL Server。现在,.NET框架中提供了创建GUID必要的类,使生成GUID变得容易。System名称空间中包含了声称GUID的GUID类,这个类包含 NewGUID()方法,当它被调用时,就返回一个带有新值的GUID对象。现在,就让我们来看看生成一个新GUID的简单例子:

<html>

<body>

<%=System.GUID.NewGUID()%>

</body>

</html>

点击这里演示。

刷新演示页面,你就会发现每次都会显示一个新的GUID。

以下是对上面代码进行了"修饰"的版本,点击"Create GUID"按钮就会触发创建一个新的GUID:

<html>

<script language="vb" runat="server">

’ 当点击"Create GUID"按钮时,调用下面的防范

Sub displayNewGUID (Sender As Object, E As EventArgs)

’ 设置label内容为新GUID数值

guidLabel.Text = System.GUID.NewGuid().ToString()

End Sub

</script>

<head>

<title>Demo: Generating GUIDs</title>

</head>

<body>

<form runat="server">

<asp:Button id="guidButton" text="Create GUID" runat="server" onclick="displayNewGUID" />

<br>

<asp:Label id="guidLabel" runat="server" />

</form>

</body>

</html>

点击这里演示。

由于上述方法使用了.NET的基本类之一,因此它可以被任何.NET应用程序使用,而不仅仅局限于ASP.NET中。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航