โครงสร้างหนึ่งในโครงสร้างของเราคือประเภท Guid จะสร้างมูลค่าที่ถูกต้องได้อย่างไร?
โครงสร้างหนึ่งในโครงสร้างของเราคือประเภท Guid จะสร้างมูลค่าที่ถูกต้องได้อย่างไร?
คำตอบ:
Guid id = Guid.NewGuid();
Guid.NewGuid()
สร้าง guid แบบสุ่มใหม่
มีสองวิธี
var guid = Guid.NewGuid();
หรือ
var guid = Guid.NewGuid().ToString();
ทั้งคู่ใช้คลาส Guid ตัวแรกสร้างวัตถุ Guid ตัวที่สองคือสตริง Guid
var guid = Guid.NewGuid().ToString()
เพียงแค่เปลี่ยนเป็นสตริง
Guid.NewGuid ()จะสร้างขึ้นมาหนึ่งอัน
var guid = new Guid();
เฮ้มันเป็น 'ที่ถูกต้อง' ถึงแม้ว่าจะไม่ค่อยมีประโยชน์ Guid
(guid คือศูนย์ทั้งหมดหากคุณไม่รู้บางครั้งสิ่งนี้จำเป็นต้องระบุว่าไม่มี guid ในกรณีที่คุณไม่ต้องการใช้ Guid ที่ไม่มีค่า)
var guid = new Guid(new byte[] { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, });
ที่จะทำให้ "ว่างเปล่า" ทั้งหมด 0 Guid 00000000-0000-0000-0000-000000000000
เช่น
var makeAllZeroGuID = new System.Guid();
หรือ
var makeAllZeroGuID = System.Guid.Empty;
เมื่อต้องการทำให้ guid ที่แท้จริงมีค่าเฉพาะสิ่งที่คุณอาจต้องการ
var uniqueGuID = System.Guid.NewGuid();
System.Guid desiredGuid = System.Guid.NewGuid();
หากคุณต้องการสร้าง Guid ที่ "ต้องการ" คุณสามารถทำได้
var tempGuid = Guid.Parse("<guidValue>");
ซึ่งจะเป็นสิ่งที่ชอบ<guidValue>
1A3B944E-3632-467B-A53A-206305310BAE
นอกจากนี้ยังมี ShortGuid - คลาส GUID ที่สั้นและเป็นมิตรใน C # มันสามารถใช้ได้เป็นNuget ข้อมูลเพิ่มเติมที่นี่
PM> Install-Package CSharpVitamins.ShortGuid
การใช้งาน:
Guid guid = Guid.NewGuid();
ShortGuid sguid1 = guid; // implicitly cast the guid as a shortguid
Console.WriteLine(sguid1);
Console.WriteLine(sguid1.Guid);
สิ่งนี้สร้าง guid ใหม่ใช้ guid นั้นเพื่อสร้าง ShortGuid และแสดงค่าที่เทียบเท่าสองค่าในคอนโซล ผลลัพธ์จะเป็นบางสิ่งตามแนวของ:
ShortGuid: FEx1sZbSD0ugmgMAF_RGHw
Guid: b1754c14-d296-4b0f-a09a-030017f4461f
หากคุณใช้สิ่งนี้ใน Reflection C # คุณสามารถรับ guid จากคุณสมบัติของคุณสมบัติได้ดังนี้
var propertyAttributes= property.GetCustomAttributes();
foreach(var attribute in propertyAttributes)
{
var myguid= Guid.Parse(attribute.Id.ToString());
}
//Retrive your key ID on the bases of GUID
declare @ID as uniqueidentifier
SET @ID=NEWID()
insert into Sector(Sector,CID)
Values ('Diry7',@ID)
select SECTORID from sector where CID=@ID