@Ante: Jika Anda memiliki kelas Guid maka Anda memiliki metode NewGuid.
Guffa
61
Hanya penjelasan singkat mengapa Anda perlu memanggil NewGuid sebagai lawan menggunakan konstruktor default ... Dalam .NET semua struktur (tipe nilai seperti int, desimal, Guid, DateTime, dll) harus memiliki konstruktor tanpa parameter default yang menginisialisasi semua bidang ke nilai defaultnya. Dalam kasus Guid, byte yang menyusun Panduan semuanya nol. Daripada membuat kasus khusus untuk Guid atau menjadikannya kelas, mereka menggunakan metode NewGuid untuk menghasilkan Guid "acak" baru.
"Saya tidak dapat menggunakannya" - apa yang terjadi jika Anda mencoba menggunakannya? Ketik secara manual (mungkin ada masalah dengan inteligensi Anda) dan coba kompilasi - apakah Anda mendapatkan kesalahan kompilasi?
Matt Brindley
Apa yang Anda maksud ketika Anda mengatakan Anda "tidak dapat menggunakannya"? Jika Anda mengetik Guid x = System.Guid.NewGuid () dan mengkompilasi, apakah Anda mendapatkan error? Atau apakah Anda tidak menyukai nilai yang Anda dapatkan untuk x?
DOK
LOL ya, algoritme Panduan terkadang perlu di-boot ulang. Mendesah.
Josh
4
something = new Guid()sama something = Guid.Empty.
Jawaban:
Kamu harus menggunakan
Guid.NewGuid()
sumber
Hanya penjelasan singkat mengapa Anda perlu memanggil NewGuid sebagai lawan menggunakan konstruktor default ... Dalam .NET semua struktur (tipe nilai seperti int, desimal, Guid, DateTime, dll) harus memiliki konstruktor tanpa parameter default yang menginisialisasi semua bidang ke nilai defaultnya. Dalam kasus Guid, byte yang menyusun Panduan semuanya nol. Daripada membuat kasus khusus untuk Guid atau menjadikannya kelas, mereka menggunakan metode NewGuid untuk menghasilkan Guid "acak" baru.
sumber
Ini masuk
System.Guid.
Untuk membuat GUID dalam kode secara dinamis:
Untuk melihat nilainya:
string x = messageId.ToString();
sumber
something = new Guid()
samasomething = Guid.Empty
.Gunakan
Guid.NewGuid();
sebagai gantinyasumber
Guid g1 = Guid.NewGuid(); string s1; s1 = g1.ToString(); Console.WriteLine("{0}",s1); Console.ReadKey();
sumber