Bu gözler neler gördü neler
Süper Üye
Guid nedir ?
Değişkenler için sürekli değişen değer yani kimlik numarası üreten bir sınıf(class) çeşididir. Bu sınıf (Globally Unique Identifier) rakamsal ve metinsel tiplerin bir araya gelmesi ile oluşur. Hafızadan 16 byte kullanırlar.
Guid birçok yerde kullanılabilir. Biz en çok internet üzerinden kaydettiğimiz resimleri isim verirken kullanıyoruz. Resmin orjinal adı ile birlikte bir Guid ekliyoruz.
Ufak bir örnek üzerinden gösterelim.
* Bir Forma iki Button kontrolü koyun.
* Button kontrolü Name : btnNullable.
* Button kontrolü Name : btnGuid.
1.resim
Yaptıktan sonra yukarıdaki gibi görüntü olacak, button'a sağ tıklayıp özellikler deyin. Name kısmını yukarıda verdiğim şekilde değiştirin.
2.resim
Değişkenler için sürekli değişen değer yani kimlik numarası üreten bir sınıf(class) çeşididir. Bu sınıf (Globally Unique Identifier) rakamsal ve metinsel tiplerin bir araya gelmesi ile oluşur. Hafızadan 16 byte kullanırlar.
Guid birçok yerde kullanılabilir. Biz en çok internet üzerinden kaydettiğimiz resimleri isim verirken kullanıyoruz. Resmin orjinal adı ile birlikte bir Guid ekliyoruz.
Ufak bir örnek üzerinden gösterelim.
* Bir Forma iki Button kontrolü koyun.
* Button kontrolü Name : btnNullable.
* Button kontrolü Name : btnGuid.
1.resim
Yaptıktan sonra yukarıdaki gibi görüntü olacak, button'a sağ tıklayıp özellikler deyin. Name kısmını yukarıda verdiğim şekilde değiştirin.
2.resim
C#:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace NullableGuid
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void btnNullable_Click(object sender, EventArgs e)
{
int? Memoryhackersayi = null;
if (Memoryhackersayi.HasValue)
{
MessageBox.Show(Memoryhackersayi.Value.ToString());
}
else
{
MessageBox.Show(Memoryhackersayi.GetValueOrDefault(123).ToString());
}
//int sayi = 0;
}
private void btnGuid_Click(object sender, EventArgs e)
{
string MemoryGuidUret = Guid.NewGuid().ToString("N");
MessageBox.Show(MemoryGuidUret);
}
// MEMORY HACKERS ** DEVLOP ** C# 2019
}
}
Şimdi biraz daha açıklayıcı bilgi verelim neyin ne olduğunu biraz daha net anlatayım.
Nullable
Satır 15:
* int Tipindeki Memoryhackersayi değişkeni null değer içerebilen bir değişken olsun.
Satır 17:
* Nullable Memoryhackersayi değişkeni değer içeriyor mu bak. Satır 15'te biz null değer atadığımız için false döneceği zaten belli.
Satır 19:
Eğer değer içeriyorsa, içerdiği değeri göster
Satır 21:
* Eğer değer içermiyorsa,
Satır 23:
* Değişkenin metot parametresindeki değerini görüntüle.
* Parametre ile bir değer belirtilmediyse Default değerini görüntüle.
Satır 25:
* sayi değişkeninden sonra nokta ile metot, özellik vb. listeleyiniz. Nullable Memoryhackersayi değişkeninden sonra nokta ile metot, özellik vb. listeleyiniz. Farkı karşılaştırınız.
Satır 30:
* string tipindeki MemoryGuidUret değişkenine değer ataması yap = Guid sınıfı NewGuid() metodunu çalıştır.
* Şöyle bir Guid üretilir: "a93fda9a-97bb-4a32-a580-0b715d7109b6".
* Aradaki çizgileri istemiyorsanız String çevirimi sırasında "N" harfini kullanabilirsiniz.
Satır 31:
* Ürettiğin Guid değerini göster.
Sonuç:
* Değer tipli bir değişken null içerme ihtimali varsa Nullable olarak tanımlayınız.
* Benzersiz bir ID üretmek için Guid sınıfını kullanabilirsiniz.
Aklınızda takılan soruları konu içerisinde yazabilirsiniz, elimden geldiğince yardımcı olmaya çalışacağım.
Nullable
Satır 15:
C#:
int? Memoryhackersayi = null;
Satır 17:
C#:
if (Memoryhackersayi.HasValue)
Satır 19:
C#:
Messagebox.Show(Memoryhackersayi.Value.ToString());
Satır 21:
C#:
else
Satır 23:
C#:
MessageBox.Show(Memoryhackersayi.GetValueOrDefault(123).ToString());
* Parametre ile bir değer belirtilmediyse Default değerini görüntüle.
Satır 25:
C#:
int sayi = 0;
Satır 30:
C#:
string MemoryGuidUret = Guid.NewGuid().ToString("N");
* Şöyle bir Guid üretilir: "a93fda9a-97bb-4a32-a580-0b715d7109b6".
* Aradaki çizgileri istemiyorsanız String çevirimi sırasında "N" harfini kullanabilirsiniz.
Satır 31:
C#:
MessageBox.Show(MemoryGuidUret);
Sonuç:
* Benzersiz bir ID üretmek için Guid sınıfını kullanabilirsiniz.
Aklınızda takılan soruları konu içerisinde yazabilirsiniz, elimden geldiğince yardımcı olmaya çalışacağım.