Ana Sayfa Blog Sayfa 4

C# Döngüler : For While Foreach

2
C# Döngüler : For While Foreach
C# Döngüler : For While Foreach

Bu makalemizde C# döngüler konusunda bilgiler vereceğiz. C# döngüleri olan for döngüsü, while döngüsü ve foreach döngüsünü ayrıntılı bir şekilde açıklayacağız. C# ta döngülerin kullanımını çeşitli örnekler kodlarla açıklayacağız.

Örneğin for döngüsünün tersten yazımını ve C# ile iç içe for döngüsü oluşturmayı göstereceğiz. Ayrıca while döngüsünün do while olarak kullanımını ve farklarını da açıklayacağız.

C# Döngüler

Programlamada döngüler genel olarak tekrar eden işlemleri kolaylaştırmak için kullanılırlar. Döngüler konusunda ilk akla gelen 1′ den 100′ e kadar olan sayıları ekrana yazdırma örneğinde olduğu gibi tekrarlı işlemlerde döngüler kullanılır. Sözü edilen örnekte sayıları ekrana yazdırmak için 100 satır kod yazmak gerekirken bu işlemi döngüler ile yaptığımızda 4 satır kodla işlemi tamamlamış oluruz.

C# While Döngüsü

C# while döngüsü, döngü için yazılan koşul sağlandığı sürece çalışan bir döngüdür. Bir veri kaynağından veri okurken yada ekrana veri yazdırırken sıklıkla kullanılır. Kullanımı oldukça basittir.

Örnek olarak, 1’den 100′ e kadar olan sayıları while döngüsü ile yazmak istediğimizde kodlamamız aşağıdaki gibi olur.

int sayi = 1;
while (sayi<100)
{
   Console.WriteLine(sayi);
   sayi++;
}

C# Do While Döngüsü

C# do while döngüsünün while döngüsünden tek farkı, döngü ilk kez döneceğinde koşul kontrol edilmez. Yani koşul sağlanmıyor olsa bile en az 1 kez döngü çalışır. Bu özelliğinden dolayı koşulun sağlanmama ihtimalinin yüksek olduğu ve döngünün en az bir kez çalıştırılması istendiğinde kullanılır.

Yukarıdaki örnekteki sayi değişkeninin değerini 100 olarak değiştirip do while döngüsünün nasıl çalıştığını görebiliriz.

do
{
   Console.WriteLine(sayi);
   sayi++;
}
while (sayi < 100);

C# For Döngüsü

C# for döngüsü sayı temelli işlemlerde sıklıkla kullanılan döngüdür. Döngünün koşulunu tanımlayan int türünden bir değişken bulunur ve bu değerin maksimum (ters kullanımında minimum) değeri döngünün koşulunu oluşturur. For döngüsünün örnek kullanımı aşağıdaki gibidir.

for (int i = 0; i < 100; i++)
{
   Console.WriteLine(i);
}

Bu örneğin ekran çıktısı 0 ile 99 arasındaki sayılardır. Çünkü döngü değişkeni 0′ dan başlar ve 100′ den küçük olduğu sürece döner. Bu durumda da ekrana en son 99 sayısını yazar. Bu örneği 1 ile 100 arasındaki sayıları yazdırmak üzere değiştirdiğimizde kodlamamız şöyle olur;

for (int i = 1; i < 101; i++)
{
   Console.WriteLine(i);
}

Örneğimizi biraz değiştirerek 1′ den 100′ e kadar olan tek sayıları yazdırmak istediğimizde döngü değişkeninin artış değerini i+=2 olarak değiştirmemiz yeterli olacak. Aynı şekilde çift sayılar için de i değerini 0′ dan başlatıp artış değerini i+=2 olarak değiştirmemiz yeterli olur.

C# for döngüsü yön olarak sadece artış göstermek zorunda değildir. Döngü koşulu tersine çevrilebilir. Örneğin sayıları 100′ den 1′ e doğru yazdırmak istediğimizde bu for döngüsü ile oldukça kolaydır.

for (int i = 100; i > 0; i--)
{
   Console.WriteLine(i);
}

Diğer matematiksel işlemlerde for döngüsü ile kolaylıkla yapılabilir. Örneğin 5 sayısının faktöriyelini bulmak için yapılması gereken 1x2x3x4x5 işlemi for döngüsü ile aşağıdaki gibi yapılır.

int faktBulunacakSayi = 5;
int sonuc = 1;
for (int i = 1; i <= faktBulunacakSayi; i++)
{
   sonuc *= i;
}
Console.WriteLine(sonuc);

C# iç içe for döngüsü

C# iç içe for döngüsü, üzerinde hareket edilmesi gereken birden çok sayı olduğu durumunda kullanılır. Örneğin çok boyutlu dizilerde, satır ve sütunlardan oluşan tablolarda iç içe for döngüsü ile işlemler kolaylıkla yapılır.

C# ile iç içe for döngüsünü daha iyi anlatabilmek için bir çarpım tablosu örneği hazırlayalım. Bu örnektede olduğu gibi dıştaki döngü 1 kez döndüğünde içteki for döngüsü 10 kez döner. Bu sayede çarpım tablosundaki gibi işlemler kolaylıkla yapılır.

for (int i = 1; i < 11; i++)
{
    for (int j = 1; j < 11; j++)
    {
        Console.WriteLine(i*j);
    }
    Console.WriteLine();
}

C# Foreach Döngüsü

C# foreach döngüsü diğer döngülerden biraz farklıdır. Örneğin for döngüsü i değişkeni ile sayılar üzerinde dönerken, foreach döngüsü nesne elemanları üzerinde döner. Programımızda ay isimlerini tuttuğumuz bir string dizi varsa, ay isimlerine erişmek için foreach döngüsü kullanabiliriz.

string[] aylar = { "Ocak", "Subat", "Mart", "Nisan", "Mayıs", "Haziran", "Temmuz", "Ağustos", "Eylül", "Ekim", "Kasım", "Aralık" };
foreach (string ay in aylar)
{
    Console.WriteLine(ay);
}

Yukarıdaki örneğimizin ilk satırında aylar isminde string tipinde bir dizi oluşturduk ve ay isimlerini (Ocak, Şubat) bu diziye eleman olarak atadık. 2. satırda foreach döngüsü değişkeni olarak string tipinde ay değişkeni ve bu değişkene atanacak olan değerleri tutan aylar dizimizi tanımladık. Dolayısı ile döngü her döndüğünde sırasıyla her bir ay ismi değişkene aktarılmış olacak.

C# döngüler konusunun sonuna geldik. Konu ile ilgili sormak istediklerinizi yada karşılaştığınız sorunları aşağıdaki yorum bölümünden iletebilirsiniz.

C# if else, switch case Kullanımı

0
C# İf Else, Switch Case Kullanımı (Karar Kontrol Yapıları)
C# İf Else, Switch Case Kullanımı (Karar Kontrol Yapıları)

C# derslerinin 2. konusu olan if else, switch case karar kontrol yapılarını tanıyacağız. C# if else ve C# switch case konularını anlatıp basit bir örnek proje ile pekiştireceğiz. Karar kontrol yapılarının kullanımı ve örnek kodlamalarını paylaşacağız.

Programlama da karar kontrol yapıları genel olarak bir mantıksal ifadenin durumunu kontrol eden ve çıkan sonuca göre yapılacak işlemleri belirleyen nesnelerdir. Hemen hemen tüm programlama dillerinde benzerleri olan if else ve switch case karar kontrol yapıları C#ta kullanılan karar kontrol yapılarıdır.

C# if else, else if Kullanımı

C# if else mantıksal bir durumu (boolean) kontrol etmek gerektiğinde kullanılır. Kontrol edilecek ifade if şartı olarak yazılır, ifade doğru ise if bloğu içerisindeki kodlar çalışır. İfadenin doğru olmadığı durumda da kod çalıştırmak istenirse if bloğundan sonra bir else bloğu oluşturulur. Her if kullanımında else bloğu tanımlamak zorunlu değildir.

Kelime anlamlarına bakıldığında if eğer, else aksi durumda anlamlarına gelir. Buradan da genel bir tanımlama yapılabilir. Buna göre mantıksal bir kontrol eğer doğruysa (if bloğu) yada değilse (else bloğu) çalışacak kodlar yazmamıza olanak tanır.

C# if else, switch case Kullanımı (Karar Kontrol Yapıları)
C# if else, switch case Kullanımı (Karar Kontrol Yapıları)

Kontrol edilecek mantıksal ifade birden çok olduğu durumda if else yapısı genişletilebilir. Bu durumda birinciden sonraki her kontrol ifadesi else if şartı olarak yazılır. Aşağıda if else ve else if kullanımına örnek olacak kodlamalar mevcuttur.

if Kullanımı

Sadece bir şartın doğru olduğu durumu kontrol etmek istediğimizde kullanacağımız yapı aşağıdaki gibidir.

if (5>3)
{
   Console.Write("Büyüktür");
}

İf yada else blogundaki kodlar yukarıdaki gibi tek satırdan oluşuyorsa süslü parantez kullanmak zorunlu değildir. Ancak 2 veya daha fazla satır kod bulunduğu durumda süslü parantez kullanmak zorunludur.

if else Kullanımı

Şartın doğru olmadığı durumlarda da kod çalıştırmak istediğimizde kullanacağımız yapı aşağıdaki gibidir.

if (5<3)
   Console.WriteLine("Küçüktür");
else
   Console.WriteLine("Büyüktür");

if, else if, else Kullanımı

Birden çok şartın kontrol edileceği durumlarda kullanılacak if, else if, else yapısına örnek aşağıdaki gibidir.

if (5 < 3)
   Console.WriteLine("5 Küçüktür 3' ten");
else if (5 > 3)
   Console.WriteLine("5 Büyüktür 3' ten");
else if (5 >= 3)
   Console.WriteLine("5 Büyük veya Eşittir 3' e");
else if (5 == 3)
   Console.WriteLine("5 Eşittir 3' e");
else
   Console.WriteLine("Bu şartların hepsi yanlıştır");

Program yukarıdan aşağıya doğru ilerlerken doğru olan ilk şartla karşılaştığında, bloğundaki kodları çalıştırıp diğer şartları kontrol etmeden bu yapının sonuna ilerler. Yukarıdaki örneğimizde ilk doğru şart 3. satırdaki else if şartıdır. Bu durumda bu kodlamanın çıktısı da 5 Büyüktür 3′ ten  olacak. Ve program diğer şartları kontrol etmeden bu yapının sonuna ilerleyecek. Yani 5. satırdaki else if şartıda doğru olduğu halde program orayı görmeyecek.

C# switch case Kullanımı

switch case yapısı genellikle eşitlik durumunu kontrol etmek için kullanılır. Yani öğrencinin notu 5 ise, haftanın 1. günü ise gibi örnek durumlarını kontrol etmek ve bu durumlara özgü kodlar çalıştırmak için kullanılabilir. switch case yapısında if else blogundaki gibi mantıksal kontroller sadece eşitlik durumu için yapılabilir.

Aşağıdaki örnekte 5′ lik not sistemine göre öğrencinin durumunu ekrana yazan switch case yapısı mevcuttur.

switch (notu)
{
    case 1:
        Console.WriteLine("Zayıf");
        break;
    case 2:
        Console.WriteLine("Zayıf");
        break;
    case 3:
        Console.WriteLine("Orta");
        break;
    case 4:
        Console.WriteLine("İyi");
        break;
    case 5:
        Console.WriteLine("Pekiyi");
        break;
    default:
        Console.WriteLine("Yanlış bir not girdiniz");
        break;
}

switch case sonunda kullanılan default, kontrol edilen değerin verilen case değerlerinden hiçbirine uymadığı durumda çalışacak kodların yazıldığı nesnedir. Yukarıdaki örnekte öğrencinin notu 6 girilirse bu tanımlanan hiçbir case’ e uygun olmayacağı için default içerindeki kodlar çalışacaktır. switch case yapısında default kullanımı zorunlu değildir.

Switch içerisinde verilen değer hangi case ile eşleşirse o case içerisindeki kodlar çalışır. Program diğer case durumlarını kontrol etmeden switch bloğu sonuna ilerler. Bunu her case sonunda kullanılan break komutu sağlar. break kullanımı zorunludur.

C# if else ve switch case kullanımını anlattığımız makalemizin sonua geldik. Örnek kodları içeren projeyi indirmek için linke tıklayabilirsiniz. switch case ve if else kullanımı ile ilgili sorularınız için aşağıdaki yorum bölümünü kullanabilirsiniz.

C# Dersleri: Operatörler

0
C# Dersleri: Operatörler (Aritmetik ve Mantıksal Operatörler)
C# Dersleri: Operatörler (Aritmetik ve Mantıksal Operatörler)

Bu makalemizde C# mantıksal operatörler, atama ve aritmetik operatörlerini anlatacağız. Aritmetik, atama, karşılaştırma ve mantıksal operatörleri anlattığımız makalemizde ayrıca operatörlerin kullanımlarına ait örnek C# kodları da paylaşacağız.

Aritmetik Operatörler

Toplama, çıkarma, çarpma ve bölme gibi matematiksel işlemler için kullanılan operatörlerdir. Aşağıda aritmetik operatörlerin listesini bulabilirsiniz.

  • Toplama
  • Çıkarma
  • * Çarpma
  • / Bölme
  • % Mod alma
  • ++ 1 arttırma
  • 1 çıkarma

Aritmetik operatörlerin örnek kullanımları aşağıdaki gibidir.

int toplam = 6 + 3; // 9
int cikarma = 6 - 3; // 3
int carpma = 6 * 3; // 18
int bolme = 6 / 3; // 2
int modu = 6 % 3; // 0
int arttirma = 6;
arttirma++; // 7
int eksiltme = 3; 
eksiltme--;// 2

Atama Operatörleri

Değişkenlere değer atama için kullanılan operatörlerdir.

  • = Değeri değişkene atar.
  • += Değeri değişkenin değerinin üzerine ekler.
  • -= Değeri değişkenin değerinden çıkarır.
  • *= Değeri değişkenin değeri ile çarpar.
  • /= Değeri değişkenin değerine böler.
C# Dersleri: Operatörler (Aritmetik ve Mantıksal operatörler)
C# Dersleri: Operatörler (Aritmetik ve Mantıksal operatörler)

Atama operatörlerinin kullanım örnekleri aşağıdaki gibidir.

int sayi = 5;
sayi += 1; // 6
sayi -= 1; // 5
sayi *= 2; // 10
sayi /= 5; // 2

Karşılaştırma Operatörleri

İf else yapısı ile sıklıkla kullanılan karşılaştırma operatörleri ifade doğru ise true, değilse false sonucu üretirler. C# karşılaştırma operatörleri aşağıdaki gibidir.

  • == Eşittir
  • != Eşit değil
  • > Büyüktür
  • < Küçüktür
  • >= Büyük veya eşittir
  • <= Küçük veya eşittir

Karşılaştırma operatörlerinin örnek kullanımları ve ürettikleri sonuçlar aşağıdaki gibidir.

5 == 3 //5 3'e eşit değildir - false
5 != 3 //5 3'e eşit değildir - true
5 > 3 //5 3'ten büyüktür - true
5 < 3 //5 3'ten küçüktür - false
5 >= 3 //5 3'ten büyük veya eşittir - true
5 <= 3 //5 3'ten küçük veya eşittir - false

Mantıksal Operatörler

C# mantıksal operatörleri mantıksal ve ile mantıksal veya operatörleridir. Birden çok mantıksal koşulu birlikte kontrol etmek için kullanılır. Mantıksal ve ile kontrol edilen şartların tamamı doğru olduğunda ifade doğru sayılır. Mantıksal veya operatöründe ise kontrol edilen şartlardan biri doğru olduğunda ifade doğru kabul edilir. Mantıksal operatörlerin C# sembolleri aşağıdaki gibidir.

  • Mantıksal ve: &&
  • Mantıksal veya: ||

Mantıksal operatörlerin if ile kullanımları aşağıdaki gibidir.

if (5 > 3 && 2 == 2)
   Console.WriteLine("Ve operatörü: Tüm durumlar doğru ise sonuç doğru olur.");
else if (5 < 3 && 2 == 2)
   Console.WriteLine("Veya operatörü: Durumlardan biri doğru olduğunda sonuç doğru olur");

C# operatörleri konumuzun sonuna geldik. Operatörler konusu hakkında sormak istediklerinizi yada karşılaştığınız sorunları aşağıdaki yorum bölümünden iletebilirsiniz. C# dersleri konusunda yeni makalelerimiz de yolda.

C# Dersleri: Değişkenler

0
C# Dersleri: Değişkenler
C# Dersleri: Değişkenler

Merhabalar, bu makalemizde C# dersleri ilk konusu olan C# değişkenler konusunu anlatacağız. C#’ ta değişken tanımlama, değişken tipleri, tipler arasındaki dönüşümler dersimizin alt başlıkları olacak. Dersimiz içerisinde değişkenler ile ilgili pek çok kod örneği paylaşacağız.

C# Dersleri : Değişkenler

Değişkenler, geliştirdiğimiz programlarda ihtiyacımız olan bilgileri RAM bellek üzerinde tutan programlama nesneleridir. Değişkenlerin tipleri de içerisinde tuttuğumuz verilerin türüdür. Örneğin değişkenler mantıksal (boolean), metinsel (string) ve sayısal (int) tiplerde olabilirler. Aşağıda C# değişken tiplerinin bir listesi mevcuttur.

Sayısal Değişken Tipleri

Çok sayıda sayısal değişken tipi mevcuttur. Ancak bunların içerisinde en çok kullanılanları byte, int, long ve double tipleridir.

Adı		Boyut	Çeşit		Değer Aralığı
byte	1 byte	(tam sayı)	0, ..., 255
sbyte	1 byte	(tam sayı)	-128, ..., 127 
short	2 byte	(tam sayı)	-32768, ..., 32767 
ushort	2 byte	(tam sayı)	0, ..., 65535 
int		4 byte	(tam sayı)	-2147483648, ..., 2147483647 
uint	4 byte	(tam sayı)	0, ..., 4294967295
long	8 byte	(tam sayı)	-9223372036854775808, ..., 9223372036854775807
ulong	8 byte	(tam sayı)	0, ..., 18446744073709551615
float	4 byte	(reel sayı)	±1.5*10-45, ..., ±3.4*1038 
double	8 byte	(reel sayı)	±5.0*10-324, ..., ±1.7*10308
decimal	16 byte	(reel sayı)	±1.5*10-28, ..., ±7.9*1028

Metinsel Değişken Tipleri

C#’ta metinsel ifadeleri tutmak için 2 değişken tipi mevcuttur. char tipi tek bir karakter buyutuna sahipken, string tipi sınırsız sayıda karakter saklayabilir.
char – 2 baytlık tek bir karakteri tutar.
string – Sınırsız metin tutar.

Mantıksal Değişten Tipi

Doğru/yanlış gibi mantıksal ifadeleri taşıyan değişken tipi bool (boolean) değişkenlerdir.
bool – 4 byte – true/false değerleri alır.

C# Dersleri: Değişkenler
C# Dersleri: Değişkenler

C# Değişken Tanımlama

C# değişkenleri tanımlanırken belirli kurallara uymak gerekir. Öncelikle değişkenin tipi belirtilmek zorundadır. Değişken ismi alt tire yada metinsel bir karakter ile başlamak zorundadır. Türkçe ve diğer özel karakterler kullanılamaz. Değişken ismi içerisinde sayısal karakter kullanılabilir. Yani 1numara gibi bir değişken ismi kullanılamazken, numara1 gibi bir değişken ismi kullanılabilir. String tipinde değişkenlerin değeri çift tırnaklar arasına yazılırken char tipindeki değişkenlerin değerleri tek tırnaklar arasına yazılır.  C#’ ta değişken tanımlamanın genel ifadesi şöyledir; tipi adi = degeri

Yukarıdaki bu ifadeye göre tanımlanmış birkaç değişken örneğini aşağıda bulabilirsiniz;

string adim = "Teknolog Web";
char harf = 'T';
byte yasim = 20;
int numaram = 1210068068;
long enSevdigimSayi = 9223372036854775807;
double maasim = 8654.99;
bool dogruMu = true;

Değişken tanımlarken tutacağı değeri belirtmek zorunlu değildir. Değişkenler tanımlandıktan sonra da değer alabilir.

string adres; 
adres = "www.teknologweb.com";
int iSayisi;
iSayisi = 100;
bool sonuc;
sonuc = false;

Değişken Tip Dönüşümleri

Genellikle metinsel tipteki rakamsal ifadeleri yada tam tersi tipteki değişkenleri işleme sokmak için tip dönüşümüne ihtiyaç duyulur. Örneğin string sayi = “10”;  biçiminde tanımlanmış bir değişkenin değeri rakamlar içerir. Ancak tipi string yani metinseldir. Bu değerle matematiksel bir işlem yapmamız gerektiğinde bu değişkenin tipini değiştirmek gerekir. Belirtmekte fayda var, C# tip güvenli bir programlama dilidir.

Aşağıda tip dönüşümleri ile ilgili tüm örnekler listelenmiştir;

//byte -> string
byte yasim = 20;
string yas = yasim.ToString();
//int -> string
int sayim = 1210068068;
string sayi = Convert.ToString(sayim);
//string -> int 
string numaram = "1210068068";
int numara = Convert.ToInt32(numaram);
//byte -> int 
byte yillik = 125;
int yil = int.Parse(yillik.ToString());

C# dersleri: değişkenler konusunun sonuna geldik. C# öğrenmeye yeni başlayanlar için yararlı olacağını düşündüğümüz C# değişkenler konusunda temel bilgileri ve ihtiyaçları böylece karşıladığımızı umuyorum. Konu hakkında sorularınızı aşağıdaki yorum bölümünden iletebilirsiniz.

Asp.net Kullanıcı Girişi ve Session Kullanımı

3
Asp.net Kullanıcı Girişi ve Session Kullanımı (Veritabanı)
Asp.net Kullanıcı Girişi ve Session Kullanımı

Bu makalemizde asp.net kullanıcı girişi yapmayı ve kullanıcı yönetimi için kullanılan asp.net session kullanımı hakkında bilgiler ve kaynak kodları paylaşacağız. Kullanıcı girişi (yada yönetici), geliştireceğimiz dinamik web siteleri için olmazsa olmaz bir bileşendir. Yetki kontrolünün olmadığı dinamik bir website düşünülemez. Giriş yapan kullanıcının verilerinin tutulduğu asp.net nesneside sessionlardır.

Anlatımımız süresince örnek bir proje kodlayıp örnek projeyi yine sizinle paylaşacağız. MSSQL veritabanında basit bir kullanıcılar tablosu oluşturup, kullanıcı girişi için bu veritabanını kullanacağız. Örnek projemizin senaryosunda kullanıcı girişi yapacak ve giriş yapan kullanıcının bilgilerini session kullanarak kontrol edeceğiz.

Asp.net Session Kullanımı

Session Türkçe’ ye oturum olarak çevrilebilir. Session kullanıcı girişi ve yetkilendirme kontrolü için kullanılan bir nesnedir. Asp.net session kullanımında temelde 3 işlem vardır. Sessiona bilgi aktarmak, sessiondaki bilgiyi kontrol etmek ve session temizlemek.

Asp.net Session Oluşturma

Session nesnesine bilgi aktarmak için kullanılabilecek 2 yöntem vardır. İkiside oldukça basit kullanıma sahip yöntemlerde “SessionAdi” ile tanımladığımız kısım, sessionu çağırma, kontrol etmek gibi işlemlerde kullanacağımız ismi, “Değeri” kısmı ise bu session da tutulan bilgiyi temsil etmektedir.

//Yöntem 1
Session["SessionAdi"] = "Değeri";
//Yöntem 2
Session.Add("SessionAdi","Değeri");

Asp.net Session Kontrolü

Kullanıcının yaptığı girişi kontrol etmek ve duruma göre hareket etmek için basit bir if kontrolü yeterlidir. Eğer session boş ise “KullaniciGirisi.aspx” sayfasına yönlendirme yapılır ki kullanıcı giriş yapabilsin. Eğer session boş değilse kullanıcı karşılanır, ulaşmak istediği sayfaya yönlendirilir gibi çeşitli senaryolar gerçekleştirilebilir.

if (Session["Kullanici"]==null)
    Response.Redirect("KullaniciGirisi.aspx");
else
    Response.Write("Hoşgeldiniz "+Session["Kullanici"].ToString());

Asp.net Session Temizleme

Session temizleme basit bir işlemdir. Session.Abandon() komutu kayıtlı session verilerini temizler. Bu komut kullanıcının sistemden çıkış yapmak istediği senaryoda kullanıldığında tek başına yeterli değildir. Bu komutla birlikte sayfa kullanıcı girişi gerektirmeyen bir sayfaya yönlendirilmelidir. Bunun içinde Response.Redirect() komutu kullanılır.

Asp.net Kullanıcı Girişi Yapma

Kullanıcı girişi için 2 adet sayfa (“KullaniciGirisi.aspx” ve “Default.aspx”) kullanacağız. Kullanıcı girişi yapılmadan “Default.aspx” sayfasının görüntülenmemesini sağlayacağız. Örnek projemiz için Visual Studio üzerinde “File / New / Web Site” yolunu izleyerek yeni bir web site oluşturuyoruz. Daha sonra projemize 2 adet webform ekliyoruz.

Asp.net Kullanıcı Girişi ve Session Kullanımı (Veritabanı)
Asp.net Kullanıcı Girişi ve Session Kullanımı

Projemizde bir adet veritabanı oluşturup, “Kullanıcılar” isminde bir adet tablo oluşturuyoruz. Tablomuzdaki alanlar (“KullaniciAdi” ve “Sifre”) nvarchar(50) tipinde olacak. Daha sonra en az bir tane elle kullanıcı ekleyin.

Kullanıcılar tablomuzun SQL kodlaması aşağıdaki gibi olacak.

CREATE TABLE [dbo].[Kullanicilar] (
    [Id]           INT           IDENTITY (1, 1) NOT NULL,
    [KullaniciAdi] NVARCHAR (50) NULL,
    [Sifre]        NVARCHAR (50) NULL,
    PRIMARY KEY CLUSTERED ([Id] ASC));

Default.aspx sayfamızın kullanıcı girişi yapılmadan görüntülenmemesi için sayfanın Page Load olayı içerinde session kontrolü yapacağız. Bunun dışında bu sayfada bir adet linkbutton ile çıkış işlemini gerçekleştireceğiz.

KullanıcıGirisi.aspx sayfamızda 1 adet label (lblBilgi), 2 adet textbox (txtKullaniciAdi, txtSifre) ve 1 adet button (btnGiris) kontrolü kullanacağız. Bunun için gerekli düzenlemeleri yapıp btnGiris kontrolünün click olayı içerisine aşağıdaki kodlamayı yapıyoruz.

        string kullanici = txtKullaniciAdi.Text;
        string sifre = txtSifre.Text;
        SqlConnection baglan = new SqlConnection("Data Source=.;Initial Catalog=KullaniciGirisiVeSessionDB;Integrated Security=True");
        SqlCommand sorgula = new SqlCommand("SELECT * FROM Kullanicilar WHERE KullaniciAdi=@KullaniciAdi AND Sifre=@Sifre", baglan);
        sorgula.Parameters.AddWithValue("@KullaniciAdi", kullanici);
        sorgula.Parameters.AddWithValue("@Sifre", sifre);
        baglan.Open();
        SqlDataReader oku = sorgula.ExecuteReader();
        if (oku.Read())
        {   Session["Kullanici"] = oku["KullaniciAdi"].ToString();
            Response.Redirect("Default.aspx");}
        else
            lblBilgi.Text = "Kullanıcı adı yada şifre hatalı!";
        oku.Close();
        baglan.Close();
        baglan.Dispose();

Kodlamamızdaki ilk 2 satırda kullanıcının girmiş olduğu bilgileri textbox üzerinden alıp string türünden değişkenlere aktardık. Daha sonra SqlConnection nesnesi ile veritabanı bağlantımızı, SqlCommand nesnesi ile sorgu cümlemizi tanımladık. Kullanıcının verdiği bilgileri parametre olarak sorgumuza dahil ettik. Sorgumuzun sonucunda gelen yanıtı SqlDataReader nesnesine (oku isminde) aktardık. Sql nesneleri ile ilgili ayrıntılı bilgileri daha önceki  asp.net veritabanı işlemleri başlıklı makalemizde vermiştik, linke tıklayıp daha fazla bilgi alabilirsiniz.

İf koşulu ile veritabanından gelen yanıtın boş olup olmadığını (Read() oluyorsa kullanıcı ve şifre doğru demektir) kontrol ettik. Eğer bilgiler doğru ise gelen veriyi (oku[“KullaniciAdi”].ToString()) tanımladığımız sessiona aktardık. Daha sonrada Default.aspx sayfamıza yönlendirdik. Else durumu içerisinde ise kullanıcı adı yada şifrenin (yada ikisininde) yanlış olduğu durumu kontrol altına aldık.

Asp.net kullanıcı girişi ve session kullanımı makalemizin sonuna geldik. Örnek projemizi indirmek için buraya tıklayabilirsiniz. Kullanıcı girişi yada session kullanımı ile ilgili sormak istediklerinizi aşağıdaki yorum bölümünden iletebilirsiniz.

Asp.net Veritabanı İşlemleri

0
Asp.net Veritabanı İşlemleri (Ekle,Sil,Güncelle,Bul,Listele)
Asp.net Veritabanı İşlemleri (Ekle, Sil, Güncelle, Bul, Listele)

Asp.net veritabanı işlemleri hakkındaki makalemize hoş geldiniz. Bu makalede temel veritabanı işlemlerinden ekle, sil, güncelle, bul ve listele işlemlerini örnek kodlamalarıyla birlikte anlatacağız. Asp.net veritabanı işlemleri için her biri ayrı bir webform üzerinde olacak şekilde bir proje tasarlayıp kodlayacağız.

Makalemizde asp.net kodlarımızı C# dili ile yazacağız ve veritabanı olarak MSSQL kullanacağız. Bu iki yapının birlikte çalışmasını sağlayan teknoloji ve veritabanı nesneleri hakkında daha fazla bilgi için Ado.net makalemizi inceleyebilirsiniz.

Projemizi oluşturarak işe başlayabiliriz. Visual Studio menüsünden “New > Web Site” yolu ile yeni bir proje (ASP.NET Empty Web Site) oluşturuyoruz. Projemize bir tane MasterPage ve bu Master sayfaya bağlı her bir işlem için bir tanede webform oluşturuyoruz. Örneğin ekle işlemi için “ekle.aspx” gibi.

Master sayfamızda tüm webformlara kolaylıkla ulaşabilmek için basitçe bir menü oluşturmamızda fayda var. Ayrıca tüm sayfalarımıza “using System.Data.SqlClient” direktifini eklemeyi unutmayalım.

Daha sonra Server Explorer panelinden yeni bir veritabanı oluşturup, bunun üzerinde yeni bir tablo oluşturalım. Tablo oluşturmak için aşağıdaki komutları kullanabilirsiniz. Oluşturduğumuz tablonun üzerine sağ tıklayıp “Show Table Data” seçeneği ile tablomuzun içeriğini açıp örnek birkaç tane veri ekleyelim.

CREATE TABLE [dbo].[Veriler]
(   [AdSoyad] NVARCHAR(50) NULL, 
    [Numara] NVARCHAR(10) NULL, 
    [Yas] INT NULL, 
    [Notu] DECIMAL(5, 2) NULL)

Artık Web.config dosyasını açıp bağlantı cümlemizi tanımlayabiliriz. Konu hakkında daha önce yayınladığımız Asp.net veritabanı bağlantısı makalemizde ayrıntılı bilgiler mevcut, burada sadece kullanacağımız kodları yazmamız yeterli olacak. Web.config dosyamıza ekleyeceğimiz bağlantı cümlemiz aşağıdaki gibi olacak.

  <connectionStrings>
    <add name="baglantiCumlemiz" connectionString="Data Source=.;Initial Catalog=IslemlerDB;Integrated Security=True" providerName="System.Data.SqlClient"/>
  </connectionStrings>

Asp.net Veritabanı İşlemleri

Artık veritabanı işlemlerimizi gerçekleştirecek kodlamaları yapmaya hazırız. Öncelikle veritabanındaki kayıtları listeleyecek olan işlemi yapalım.

Asp.net Veritabanı İşlemleri (Ekle,Sil,Güncelle,Bul,Listele)
Asp.net Veritabanı İşlemleri (Ekle, Sil, Güncelle, Bul, Listele)

Listele İşlemi

Listele işlemi için bir adet GridView nesnesine ihtiyacımız olacak. GridView veritabanındaki kayıtları hızlı ve basitçe sayfalarımızda gösterebileceğimiz bir asp.net nesnesidir. ToolBox üzerinden Data başlığı altında yer alan GridView nesnemizi sayfamıza (örnek projemizde Default.aspx sayfasında olacak) sürükle-bırak yöntemi ile ekliyoruz. Daha sonra bu sayfamızın Page Load olayı içerisinde kodlamamızı yapacağız.

        SqlConnection baglanti = new SqlConnection(System.Web.Configuration.WebConfigurationManager.ConnectionStrings["baglantiCumlemiz"].ConnectionString);
        SqlCommand listeleKomutu = new SqlCommand("SELECT * FROM Veriler", baglanti);
        baglanti.Open();
        SqlDataReader listele = listeleKomutu.ExecuteReader();
        GridView1.DataSource = listele;
        GridView1.DataBind();
        baglanti.Close();
        listeleKomutu.Dispose();
        baglanti.Dispose();

Bağlantımızı Web.config üzerinden çektiğimize dikkat edin. SqlCommand ile listelemek istediğimiz verilerin sorgusunu veritabanına gönderdik. Bu sorgumuzun sonucunda bize dönecek olan yanıtı tutacak olan nesnemiz SqlDataReader. Komutumuzu ExecuteReader ile çalıştırıp gelen yanıtı “listele” ismindeki SqlDataReader nesnemize aktardık. Son olarak veritabanından gelen verimizi GridView nesnemize veri kaynağı olarak tanımladık.

Bul İşlemi

Veritabanından arama yapmak, kayıtlar arasından istenilen kritere uygun olanı seçmek gibi işlemler listeleme işlemi ile benzer özelliklere sahiptir. Aradaki tek fark bulmak istediğimiz kayıt ile ilgili veritabanına parametre göndermemiz olacak. Önceki örnekte olduğu gibi sayfamıza (“bul.aspx”) bir adet GridView ekleyeceğiz. Ayrıca bir adet TextBox ile bir adet Button ekliyoruz. Bu kez kodlarımızı button kontrolünün click olayı içerisine yazacağız.

Senaryomuz şu şekilde, textbox içerisine yazdığımız ismi veritabanında (AdSoyad sütununda) arayacağız. Bunun için kodlamamızı button click olayı içerinde yapıp, gelen sonucu GridView üzerinde göstereceğiz.

        string aranacak = TextBox1.Text;
        SqlConnection baglanti = new SqlConnection(System.Web.Configuration.WebConfigurationManager.ConnectionStrings["baglantiCumlemiz"].ConnectionString);
        SqlCommand bulKomutu = new SqlCommand("SELECT * FROM Veriler WHERE AdSoyad=@adsoyad", baglanti);
        bulKomutu.Parameters.AddWithValue("@adsoyad", aranacak);
        baglanti.Open();
        SqlDataReader listele = bulKomutu.ExecuteReader();
        GridView1.DataSource = listele;
        GridView1.DataBind();
        baglanti.Close();

Bunun için ilk satırda textbox içerisine girilen ismi tutacak bir değişken tanımladık. SqlCommand nesnemize WHERE şartı ile AdSoyad sutununda arama yapacağımızı ve bunu da “adsoyad” ismindeki parametre ile yapacağımızı belirttik. Bir alt satırda parametremizi yani textbox içine yazdığımız ismi gönderdik. Yazdığımız SQL sorgusu ile ilgili daha fazla bilgiyi T-SQL komutları makalemizde bulabilirsiniz.

Ekle İşlemi

Veritabanına yeni bir kayıt eklemek için öncelikle ekleyeceğimiz kayıt ile ilgili bilgileri webform üzerinden almalıyız. Bunun için 4 adet (Adı, Numarası, Yaşı, Notu) textbox ve bir adet buttonu formumuza ekliyoruz. Ekleme işleminin sonucu ile ilgili bilgi vermek içinde bir adet Label ekliyoruz.

        string adi = TextBox1.Text;
        string numarasi = TextBox2.Text;
        int yasi = Convert.ToInt32(TextBox3.Text);
        decimal notu = Convert.ToDecimal(TextBox4.Text);
        SqlConnection baglanti = new SqlConnection(System.Web.Configuration.WebConfigurationManager.ConnectionStrings["baglantiCumlemiz"].ConnectionString);
        SqlCommand ekleKomutu = new SqlCommand("INSERT INTO Veriler (AdSoyad, Numara, Yas, Notu) VALUES (@adSoyad, @numara, @yas, @notu)", baglanti);
        ekleKomutu.Parameters.AddWithValue("@adsoyad", adi);
        ekleKomutu.Parameters.AddWithValue("@numara", numarasi);
        ekleKomutu.Parameters.AddWithValue("@yas", yasi);
        ekleKomutu.Parameters.AddWithValue("@notu", notu);
        baglanti.Open();
        ekleKomutu.ExecuteNonQuery();
        baglanti.Close();
        Label1.Text = adi + " İsimli Öğrenci Veritabanına Eklendi!";

İlk 4 satırda textboxlar aracılığı ile girilen verileri değişkenlere aktardık. Değişkenlerimizin türlerinin tablomuzdaki veri türleri ile eşleştiğine dikkat edin. SqlCommand ile ekleyeceğimiz verileri ve parametrelerini tanımladık. Burada kullandığımız ExecuteNonQuery() komutu, ekleme (Insert Into) komutumuzu çalıştıracak olan Ado.net nesnesidir.

Sil İşlemi

Asp.net ile veritabanından kayıt silme işlemi için formumuza birer adet textbox, button ve label kontrolleri ekliyoruz. Textbox üzerinden aldığımız numara ile veritabanından kayıt sileceğiz. Sonucu da label üzerinde göstereceğiz.

        string numarasi = TextBox1.Text;
        SqlConnection baglanti = new SqlConnection(System.Web.Configuration.WebConfigurationManager.ConnectionStrings["baglantiCumlemiz"].ConnectionString);
        SqlCommand silKomutu = new SqlCommand("DELETE FROM Veriler WHERE Numara=@numara", baglanti);
        silKomutu.Parameters.AddWithValue("@numara", numarasi);
        baglanti.Open();
        silKomutu.ExecuteNonQuery();
        baglanti.Close();
        Label1.Text = numarasi + " Numaralı Öğrenci Veritabanından Silindi!";

Güncelle İşlemi

Güncelleme işlemi için sayfamıza bir 2 adet textbox, 1 adet button ve 1 adet label kontrolü ekliyoruz. Senaryomuz numarası girilen öğrencinin notunu güncelleyecek şekilde olacak.

        string numarasi = TextBox1.Text;
        decimal notu = Convert.ToDecimal(TextBox2.Text);
        SqlConnection baglanti = new SqlConnection(System.Web.Configuration.WebConfigurationManager.ConnectionStrings["baglantiCumlemiz"].ConnectionString);
        SqlCommand guncelleKomutu = new SqlCommand("UPDATE Veriler SET Notu=@notu WHERE Numara=@numara", baglanti);
        guncelleKomutu.Parameters.AddWithValue("@notu", notu);
        guncelleKomutu.Parameters.AddWithValue("@numara", numarasi);
        baglanti.Open();
        guncelleKomutu.ExecuteNonQuery();
        baglanti.Close();
        Label1.Text = numarasi + " Numaralı Öğrencinin Notu Güncellendi: " + notu;

Güncelleme işlemi de bu kadardı. Silme ve güncelleme işlemlerinde dikkat etmeniz gereken bir konu var. Eğer T-SQL sorgunuzda WHERE şartı ile silinecek yada güncellenecek kaydı belirtmezseniz tablonuzdaki tüm kayıtlar silinir yada gönderdiğiniz yeni bilgi ile güncellenir.

Temel asp.net veritabanı işlemlerini anlattığımız makalemizin sonuna geldik. Örnek projemizi indirmek için linke tıklayabilirsiniz. Veritabanı işlemleri ile ilgili yaşadığınız sorunları yada sormak istediklerinizi aşağıdaki yorum bölümünden bize iletebilirsiniz.

BTC – Bitcoin Nedir?

0
BTC - Bitcoin Nedir? (BTC Nasıl Alınır?Bitcoin Nasıl Üretilir?Altcoin Nedir?)
BTC - Bitcoin Nedir? (BTC Nasıl Alınır?Bitcoin Nasıl Üretilir?Altcoin Nedir?)

Lidyalılar parayı buldu da yadırganmadı mı sanıyorsunuz? Elbetteki günümüzdeki kullandığımız para birimleri bu zamana gelene kadar deyimi yerindeyse neler çekti peki bu yetti mi, hayır? Bitcoin de fiziksel parayı ortadan kaldırmayı rota çiziyor gibi. Tahmin edeceğiniz üzere makalemizin konusu BTC yani Bitcoin nedir?

Bitcoin Nedir ?

Bitcoin belirli bir merkezi olmayan 3. şahısları, komisyoncuları devreden çıkaran bir nevi uçtan uca şifrelerle en güvenilir transferler yapabileceğiniz ve bu paraların da cüzdanları olan hesaplara aktarabileceğiniz ve hatta para gönderimini dakikalar bile sürmeden gerçekleştiren ( miktarı ne olursa olsun ) aynı zamanda da herhangi bir üçüncü şahıs karıştırmadan bunu yapılmasını sağlayan dijital bir para birimidir. Tüm yapılan bu işlemler sadece bilgisayar ağlarında gerçekleşiyor olması apayrı bir güzelliğidir.

Bitcoin’ in Mazisi nedir ?

Bitcoin olarak adlandırılan dijital para ilk olarak 3 Ocak 2009’da piyasaya çıktı. Maksimum bitcoin sayısı 21 milyon ile sınırlıydı. 22 Temmuz 2013 tarihinde dolaşımdaki bitcoinlerin toplam değeri 1.2 milyar doları gördü. 2014 yılının Haziran aylarında bu değer 8.2 milyar dolar seviyesine kadar uluaşıldığı bilgisi edildi ve günden güne işlem hacmi ile beraber büyümeye devam ediyor.

Bitcoin’ i Kim Buldu ?

Uzun süredir kimiliği gizli sadece nakamato lakabında biri olduğu biliniyordu. Fakat günümüzde Craig Wright isminde Avustralyalı bir iş adamı bbc de sunduğu teknik verilerle ilk yapılan btc transferinin dijital belgeleriyle kendisinin bulduğunu kanıtlamıştır.Wright gerek arkadaşları gerekse vergilendirme yönünden lakabının arkasındaki kişiyi araştımak için açılan soruşturmalar yüzünden baskı altında hissettiğinden dolayı bu açıklamayı yapıp ve herhangi bir ünvan, şöhret, para istemediğini dile getirip kendisini deyimi yerindeyse kendisini kendi halinde bırakmalarını rica etmiştir.

Btc Nasıl Alınır ?

Diye soracak olursanız btc satış işlemi yapan bir çok aracı borsa sitesi mevcuttur , arama motorlarından bu siteler arasından en güvenilir olanlarını seçip satın alma işlemi yapılabilir tabi herşeyden önce bitcoin cüzdanı yaratmak gereklidir. Bitcoin cüzdanıda aynı sekilde arama motorundan en güvenilir cüzdanı ister masaüstü olarak indirip ister web arayüzü cüzdanı açılabilirsiniz hepsi ücretsizdir.

Bitcoin Nasıl Üretilir – Btc Madenciliği Nedir?

İşte bu apayrı bir konudur sayfalar yetmez bunu anlatmaya kısa geçicem bu yüzden ama gerekli olan tüm bilgileri vermeye çalışacağım öncelikle bitcoin üretimi bilgisayarın yazılan program aracılığıyla bazı algoritmaları çözmesiyle bir blok aşılır her blok aşımında btc üretilir . Peki bu işlemleri kim çözecek Btc ilk zamanlar cpu (işlemci) ile bu matematiksel işlemler çözülebiliyordu fakat her işlem çözümünde bir sonraki işlem daha fazla zor olup btc nin daha zor bulunması için ayarlanmıştır hem bu şekilde değeri artacak hemde ilk zamanlarda 21 milyon sınırda üretilceğinden 21 milyona ulaşımı zor olucaktır.Hatta 2140 senesinde ulaşılacağı söyleniyor.

BTC Nasıl Alınır ? Bitcoin Nasıl Kazanılır?

Bitcoin üretmine geçildikçe zorluk arttı ve değerleri yükselmeye başladı ilk çıktığında 3 – 4 dolar olan bitcoin günümüzde 4600 doları gördü ve zamanla cpu lar bu işlemleri çözmekte zorlanmaya başladılar 2 ayda 1 btc çıkmaz olduki hemen yeni çare bulmaya metod geliştirilip ekran kartlarının gpu ları ile işlem çözmüne yola çıkıldı ve tekrardan hızını arttıran üretim iş adamlarının dahi gözlerine batar oldu şirketler açıldı sadece bu işi yapan fabrika kiralayıp ekran kartlarıyla üretime geçen tesisler olduğu görüldü.

Fakat btc üretiminde gpu larda bir yerde yetmemeye başlayınca sadece bu işlemi yapmak için özel tasarlarnmış makinalar üretilmeye başlandı ve şuan bu makinalara sahip büyük firmalarca devam ediliyor bu işi küçük çapta yapan kimse kalmadı derken altcoin devreye girdi büyük balıklak küçük balıkları yemeye devam ediyor ama kim en çok yerse o büyük balık olcak mantığıyla günümüzde 700 1500 arası btc benzeri altcoinlere yönelip madenciliğine başlanmıştır . Bu işin sonunun nereye varacağını kimse bilmiyor işin aslı.

Altcoin

Bitcoin mantığıyla çalışan bitcoinden sonra benzeri şekilde piyasaya çıkmış diğer sanal para birimleridir. Bunlar arasında en dikkat çeken Etherium coin dir.Günümüzde etherium con microsoft şirketiyle anlaşma yaparak adını duyurmuştur.

Peki asla BTC üretemez miyiz ?

Evet btc havuz sistemleriyle (mining Pool ) üretebiliriz. Havuz sistemi birçok kazım işlemi yapan makineların yani madencileri bir havuzda toplayıp dağıtımlarını sağlayan sistemdir. Altcoin varken bunu yapan var mıdır orasını bilemem çünkü btc değeri ne düşmek biliyor ne durmak aynı şekilde zorluk seviyesi artıyor.

Zorluk seviyesi demişken günümüzdeki zorluk seviyesini öğrenmek için arama motoruna İngilizce şekilde aratarak bulmak gayet kolay olacaktır. Madencilik ilk başta yazdığım gibi geniş çaplı bir konudur bunu burada bitirelim.

Asp.net Veritabanı Bağlantısı

0
Asp.net Veritabanı Bağlantısı
Asp.net Veritabanı Bağlantısı

Bu makalemizde Asp.net veritabanı bağlantısı için kullanılan çeşitli yöntemleri ve örnek kodlamaları inceleyeceğiz. Asp.net veri tabanı bağlantısı için MS SQL veritabanını kullanacağız. Bağlantı için kullanılan çeşitli yöntemlerden Web.config dosyası, harici bir class dosyası ve button click olayı içine yazılan bağlantı cümlelerini inceleyeceğiz.

Makalemizi örnek bir proje kodlayarak anlatacağız. Makalemizin son bölümünde hazırladığımız örnek projeyi ve kaynak kodlarını bulabilirsiniz.Uygulamaya geçmeden önce yukarıda bahsettiğimiz 3 farklı kullanımı anlatalım.

Web.Config ile Veritabanı Bağlantısı

Web.config, Asp.net projemizin (yada websitesi) ayarlarının tutulduğu dosyadır. Veritabanı bağlantı cümlesi, session ayarlamaları, Url yapısı tanımları, hata kontrolü gibi ayarlamalar web.config dosyası ile yapılır. Sitenin genel ayarları için kullanılır. Buradan da anlaşılacağı üzere, web.config dosyasında tanımlanacak bir bağlantı cümlesi ile sitemizdeki tüm sayfalarda kolayca veritabanı bağlantısına sahip oluruz. Web.config dosyası XML temelli bir yapıya sahiptir.

Class Dosyası ile Asp.net Veritabanı Bağlantısı

Asp.net class dosyaları projenin çeşitli yerlerinde tekrar tekrar kullanacağımız kod parçalarını yazabileceğimiz dosyalardır. Tekrar eden kodlarımızı harici bir dosyada tutmak kod okunurluğunu arttırdığı gibi, projemizin daha yönetilebilir olmasını da sağlar. Veritabanı işlemlerini de yine harici bir class dosyası üzerinden yapabiliriz. Özellikle geliştirme aşamasında sıkça değişen bağlantı cümlelerini (Connection Strings) yönetmek oldukça kolaylaşır. Web.config kullanımından farkı ise, programatik olarak daha özgür olabiliriz. Class dosyaları C# ile (Projenizin dili ile) kodlanır.

Click Olayı İçerisinde Veritabanı Bağlantısı

Projeniz çok küçük boyutlu ise yada henüz öğrenme aşamasındaysanız, bağlantı cümlelerinizi doğrudan buttonların click olayının içerisine de yazabilirsiniz. Bu durumda her, button için bağlantı cümlesini tekrar tekrar yazmanız gerekir.

Asp.net Bağlantı Cümlesi (Connection Strings)

Projemize bağlanacağımız veritabanını tanıtmak için yazdığımız komutlara bağlantı cümlesi (Connection Strings) denir. Kullandığınız veritabanı türüne, sürümüne göre ve bağlantı durumuna göre bu bağlantı cümleleri farklılık gösterir. Bağlantı cümleleri için connectionstrings.com iyi bir rehberdir.

Bu kadar ön bilgi yeterli sanırım. Artık Visual Studio‘ ya geçip kodlamaya başlayabiliriz. Yeni bir web site açıp bir adet web form ekleyerek kodları yazmaya başlayabiliriz. “Server Explorer” penceresinden veritabanı bağlantısı yapmayı unutmayınız. Biz projede “BaglantiDatabase” ismindeki veritabanını kullanacağız.

Asp.net Veritabanı Bağlantısı
Asp.net Veritabanı Bağlantısı

Button Click Metodu ile

Sayfamıza “System.Data.SqlClient” kütüphanesini ekliyoruz. Veritabanı bağlantısı için bu kütüphaneyi kullanacağız. Daha sonra sayfamıza bir adet button ekleyip buttonnun click olayına bağlantı cümlemizi yazabiliriz.Bu aşamaya kadar yazdığımız kodlar aşağıdaki gibi olacak.

    protected void btnBaglanti_Click(object sender, EventArgs e)
    {
        SqlConnection baglantiCumlemiz = new SqlConnection(@"Data Source=.;Initial Catalog=BaglantiDatabase;Integrated Security=True");
        baglantiCumlemiz.Open();
        Response.Write("Button ile veritabanı bağlantısı başarılı!");
        baglantiCumlemiz.Close();
    }

Bağlantı cümlemizi yazdık, bağlantımızı Open() metodu ile açtık, ekrana mesajımızı yazdırdık ve bağlantımızı Close() metodu ile kapattık. Herhangi bir sorunla karşılaşmadan bağlantımızın gerçekleştiğini görebildik. Response.Write() metodu parantezler içerisine yazdığımız metni ekranda göstermemizi sağlar. Bunun için mesajımızı göstermek için bu metodu kullandık.

Web.Config Yöntemi

Artık web.config üzerinden bağlantı yapmayı deneyebiliriz. Bunun için sayfamıza bir button daha ekliyoruz ve web.config dosyamızı açıyoruz.

Web.config dosyasında <configuration> düğümü içerisinde <system.web> düğümünün altına yeni bir düğüm olarak <connectionStrings>  düğümünü ekliyoruz. Bağlantı cümlemizide ekledikten sonra web.config dosyasımız aşağıdaki gibi olacaktır.

<configuration>
    <system.web>
      <compilation debug="true" targetFramework="4.5.2" />
      <httpRuntime targetFramework="4.5.2" />
    </system.web>
    <connectionStrings>
      <add name="baglantiCumlemiz2" connectionString="Data Source=.;Initial Catalog=BaglantiDatabase;Integrated Security=True" providerName="System.Data.SqlClient"/>
    </connectionStrings>
</configuration>

Şimdi ConfigurationManager aracılığı ile bağlantımızı kullanacağımız yerde (bu örnek için button içinde) çağırıyoruz. Diğer kodlamamız aynı.

    protected void btnWebConfig_Click(object sender, EventArgs e)
    {
        SqlConnection baglantiCumlemiz2 = new SqlConnection(System.Web.Configuration.WebConfigurationManager.ConnectionStrings["baglantiCumlemiz2"].ConnectionString);
        baglantiCumlemiz2.Open();
        Response.Write("web.config ile veritabanı bağlantısı başarılı!");
        baglantiCumlemiz2.Close();
    }

Class Dosyası Yöntemi

Son yöntemimiz olan harici bir class dosyası ile veritabanı bağlantısı için birtakım eklemeler ve düzenlemeler yapacağız projemizde. Öncelikle “Solution Explorer” penceresinde sağ tıklayıp projemize App_Code klasörü ekleyeceğiz. (Add > Add ASP.NET Folder > App_Code) Sonraki adımda bu klasör içine bir adet Class dosyası (.cs) ekliyoruz. Bu dosyamızın adını örnek projemizde “Baglanti.cs” olarak kaydettik. Class dosyamızı açıp içerisine bağlantı cümlemizi yazıp, bağlantımızı açıyoruz. Burada tanımladığımız metodu projemizin diğer dosyalarında çağıracağımız için “return” deyimi ile bize bağlantı döndürmesini istedik. Class dosyamızın kodlaması aşağıdaki gibi olacak.

using System.Data.SqlClient;

public class Baglanti
{
    public SqlConnection Baglan()
    {
        SqlConnection baglantiCumlemiz3 = new SqlConnection(@"Data Source=.;Initial Catalog=BaglantiDatabase;Integrated Security=True");
        baglantiCumlemiz3.Open();
        return baglantiCumlemiz3;
    }
}

Şimdi ana sayfamıza dönüp, class dosyamızdan veritabanı bağlantısını çağıracağız. Yeni bir buton daha ekleyip buttonun click olayına aşağıdaki kodlamayı yapacağız. Kodlamamızın etkin olması için de “Baglanti” ismini verdiğimiz class dosyamızı bu sayfada kullanacağımızı belirten “Baglanti baglantimiz = new Baglanti(); ”  tanımlamamızı buttonun click olayının hemen üzerinde yazıyoruz. Bu kodlamadan sonraki kodlarımız aşağıdaki gibi olacak.

    Baglanti baglantimiz = new Baglanti();
    protected void btnClassDosyasi_Click(object sender, EventArgs e)
    {
        SqlConnection baglantiCumlemiz3 = baglantimiz.Baglan();
        Response.Write("Class dosyası ile veritabanı bağlantısı başarılı!");
        baglantiCumlemiz3.Close();
    }

Buraya kadar 3 farklı yöntem ile Asp.net veritabanı bağlantısı yaptık.Hepsi bu kadar kolay. Makalemiz boyunca yazdığımız kodları içeren örnek projemizi indirmek için linke tıklayabilirsiniz. Bir sonraki makalemizde ekleme, silme, güncelleme gibi Asp.net veritabanı işlemlerini anlatacağız.

Asp.net Master Page Hazırlama

3
Asp.net Master Page Hazırlama
Asp.net Master Page Hazırlama

Bu makalemizde asp.net master page yapısını tanıyacağız ve örnek bir master page hazırlayacağız. Master Page yapısı için olmazsa olmaz content page uygulamasını da anlatacağız. Makalemizin sonunda master ve content sayfaları hazırlama adımlarını gösteren videomuz mevcut. Öncelikle asp.net master page nedir açıklayalım.

Master Page Nedir? Ne İçin Kullanılır?

Master Page asp.net uygulamaları geliştirirken arayüzü yönetmek için oluşturulmuş bir özelliktir. Arayüzün ve web sitesinin daha kolay yönetilebilir bir yapıda olması için kullanılır. Arayüzde (özellikle tekrar eden kısımlardaki) yapılan bir değişikliğin tüm sayfalara uygulanması için ya master page kullanılmış olmalı ya da tüm sayfaları Visual Studio ile teker teker düzenlemek gerekir.

Yüzlerce sayfası olması muhtemel bir web sitesi için yüzlerce sayfanın teker teker güncellenmesi olası değildir. Bunun için master page kullanılır. Sitenin tekrar eden kısımlarını (üst kısım, yan menü ve alt kısım gibi) master page sayfasında tutmak, bu alanlarda yapılacak bir güncellemeyi (ya da hazırlanma sürecinde de) oldukça kolay bir hale getirir.

Projemize uygun bir html tasarımını incelediğimizde tekrar eden alanları kolaylıkla fark edebiliriz. Eğer web sitemizde çok fazla sayıda sayfa bulunacaksa arayüz tasarımımızda tekrar eden alanlar olmazsa olmaz. Aksi durumda zaten masterpage kullanmamıza gerek yoktur.

Master Page için Örnek HTML Tasarımı

Örnek html tasarımımızı incelediğimizde 1,2,3 numaralı (üst, sağ ve alt kısımlar) alanların tekrar edeceğini öngörebiliyoruz. Ziyaret ettiğiniz sitelerde üst kısım ve alt kısım hep aynıdır. Menüde aynı seçenekler, alt kısımda aynı copyright ifadesi yer alır. Bir çok tasarımda da burada olduğu gibi yan menü de tekrar eden yapıdadır.

Asp.net Master Page Hazırlamak için örnek HTML tasarımı
Asp.net Master Page Hazırlamak için örnek HTML tasarımı

4 numaralı alan ise sayfamızın içerik kısmını oluşturur. Ana sayfada içeriği farklı, alt sayfalarda (örneğin iletişim sayfasında bir form bulunur) farklıdır.

Content Page Nedir?

4 numaralı alanı dışarıda tutacak şekilde master page hazırlamamız gerekir. Zira bu alan master page içerisinde görünecek olan content page içerisinde yer alacak. Buradan da anlayabileceğiniz gibi content page, master page yapısında değişen kısımların yer aldığı sayfalardır. Örneğin Ana sayfamızda görünmesini istediğimiz içeriklerimizi açtığımız AnaSayfa.aspx gibi bir content page ile hazırlarız. Ayrıca content page olmadan master page görüntülenemez, yani master tek başına çalışmaz.

Master Page ve content page yapılarını tanıdık.Master page hazırlamak için tasarımımız da hazır. Visual Studio’ ya geçip uygulamaya başlamadan önce son olarak birde “Content Place Holder“ı tanıyalım.

Content Place Holder Nedir?

İsminden de anlaşılacağı üzere “Content Place Holder” yer tutucu görevindedir. Yani Master Page içine Content Place Holder yerleştirerek, değişecek içeriğin tasarımımızda nerede duracağını tanımlamış oluyoruz.

Master-Content Page Yapısı

Artık master page ile yapacağımız siteyi hazırlamaya başlayabiliriz. Visual Studio ile “New > Web Site” menüsünden yeni bir web site projesi açıyoruz. Ctrl+Shift+A kısayolu ile projemize bir master page ekliyoruz. Bu kısımda durup master içindeki kodları incelemekte fayda var.

<%@ Master Language="C#" AutoEventWireup="true" CodeFile="MasterPage.master.cs" Inherits="MasterPage" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
    <asp:ContentPlaceHolder id="head" runat="server">
    </asp:ContentPlaceHolder>
</head>
<body>
    <form id="form1" runat="server">
       <!--Buraya masterda bulunacak elemanlar gelebilir-->
            <asp:ContentPlaceHolder id="ContentPlaceHolder1" runat="server">
                 <!--Buraya içerik gelecek-->
            </asp:ContentPlaceHolder>
        <!--Buraya masterda bulunacak elemanlar gelebilir-->
    </form>
</body>
</html>

1. satırda Asp.net deklarasyon kodları mevcut. Burada, bu sayfadaki kodlamanın C# ile yapıldığını ve bu sayfanın C# kodlarının “MasterPage.master.cs” isimli dosyada tutulduğunu belirtiyor. Standart bir kodlama, müdahale etmiyoruz.

2.-3. ve 4. satırlarda da standart HTML tanımlamaları mevcut. 4. satırdaki head etiketinin sunucuda çalışacağını belirten runat=”server” tanımı ise Asp.net in eklemiş olduğu yine standart bir tanım.

5. satırda sitemizin başlığında görülecek metnin belirtileceği “title” etiketi mevcut.

6. ve 7. satırlarda “headContent Place Holder‘ ı tanımlanmış. Sitemizin genelinde etkin olmayacak, Content Page içerisinde tanımlayacağımız (html’ de ki meta etiketleri gibi) elemanlar için yer tutacak.

8. satırda “head” kısmının sonlandığını, 9. satırda ise “body” (gövde) kısmının başladığını belirten tanımlamalar yapılmış.

10. satırdaki “form” etiketi içerisinde yer alan elemanların sunucuda çalışacağını, programlanabilir olduğunu tanımlıyor. Dolayısı ile sayfamıza ekleyeceğimiz her asp.net elemanı (textbox, button) bu form etiketinin başladığı ve bittiği satırlar arasına yerleştirmiş olmalıyız. Genellikle “form” etiketi “body” etiketinden hemen sonra başlar ve “body” etiketinden hemen önce sonlanır.

11. ve 15. satırlardaki yorumda da belirttiğimiz üzere bu alanlara masterpage içerisinde olacak elemanlar (örnek html dosyamızdaki 1-2-3 numaralı alanlar) gelecek.

12-13-14 numaralı satırla ise content page içeriğinin yerini tutan content place holder tanımlanmış. İçeriği boş kalacak.

16. satırda form etiketini, 17. satırda body etiketini ve 18. satırda html etiketini sonlandırdık.

Projemize bir tane de Web Form ekleyip (sağ alttan “Select master page” seçeneğini işaretleyip) bu formu az önce eklediğimiz master page’ e bağlayıp açalım. Web site projeleri ile çalışırken bir adet “Default.aspx” isimli (genellikle) ana sayfa için tanımlanmış bir sayfanızın olmasını tavsiye ederim.

<%@ Page Title="" Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">
    <!--Burada sayfaya özgü head tanımlayabiliriz. -->
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
    <!--Buraya ana sayfamızın içerikleri gelecek -->
</asp:Content>

1. satırda asp.net tanımları mevcut.

2 ve 4. satırlar arasında sayfaya özgü head tanımlamalarını yapabileceğimiz place holder mevcut.

5 ve 7. satırlar arasında da sayfamızın içeriğini tanımlayacağız.

Asp.net Master Page Hazırlama

Buraya kadar olan kısımda Master ve Content sayfalarımızın yapısını tanıdık. Artık HTML tasarımımızı Master ve Content sayfalarına uyarlayabiliriz.

1- Öncelikle HTML tasarımımızı ve gerekli dosyalarını kopyala/yapıştır yoluyla projemize dahil ediyoruz.

2- “index.html” dosyasını açıp <head> </head> etiketleri arasındaki tüm kodları kopyalayıp Master sayfamızın “head” kısmına yapıştırıyoruz. Bu işlemden sonra Master sayfamızdaki “head” kısmı aşağıdaki gibi olmalı.

<head runat="server">
    <title>TeknologWeb // Blogname a Blogging Category Flat Bootstarp  Responsive Web Template | Home :: w3layouts</title>
	<link href="css/bootstrap.css" rel='stylesheet' type='text/css' />
	<link href="css/style.css" rel='stylesheet' type='text/css' />
	<meta name="viewport" content="width=device-width, initial-scale=1">
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<meta name="keywords" content="Blogname Responsive web template, Bootstrap Web Templates, Flat Web Templates, Andriod Compatible web template, 
	Smartphone Compatible web template, free webdesigns for Nokia, Samsung, LG, SonyErricsson, Motorola web design" 
	/>
	<script type="application/x-javascript"> addEventListener("load", function() { setTimeout(hideURLbar, 0); }, false); function hideURLbar(){ window.scrollTo(0,1); } </script>
	<!----webfonts---->
		<link href='http://fonts.googleapis.com/css?family=Oswald:100,400,300,700' rel='stylesheet' type='text/css'>
		<link href='http://fonts.googleapis.com/css?family=Source+Sans+Pro:200,300,400,600,700,300italic,400italic,600italic' rel='stylesheet' type='text/css'>
		<!----//webfonts---->
		  <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
		<!--end slider -->
		<!--script-->
<script type="text/javascript" src="js/move-top.js"></script>
<script type="text/javascript" src="js/easing.js"></script>
<!--/script-->
<script type="text/javascript">
			jQuery(document).ready(function($) {
				$(".scroll").click(function(event){		
					event.preventDefault();
					$('html,body').animate({scrollTop:$(this.hash).offset().top},900);
				});
			});
</script>
<!---->
    <asp:ContentPlaceHolder id="head" runat="server">
    </asp:ContentPlaceHolder>
</head>

index.html” dosyasına geri dönüyoruz. Body etiketinin altındaki ilk satırdan yorum olarak belirttiğimiz 1. numaralı alanın sonuna kadar (<div class=”banner”></div> arasındaki kodları) kopyalayıp master sayfamızdaki “form” etiketimizin hemen altına yapıştırıyoruz.

Aynı işlemleri 2 ve 3 numaralı alanlar için de tekrarlıyoruz. Bu alanlar için dikkat etmemiz gereken konu, 1 numaralı alanın kodlarını  Content Place Holder’ ın üstünde olacak şekilde yerleştirdik. 2 ve 3 numaralı alanların kodlarını ise Content Place Holder’ ın bitiminden sonrasına ekleyeceğiz.

Master’ a Bağlı Content Page Hazırlama

Artık son adımdayız. 4 numaralı alanımızın kodlarını kopyalayacağız ve Content Page içerisindeki Content Place Holder içerisine yerleştireceğiz. Bu işlemden sonra projeyi (kısayolu F5) çalıştırıp tarayıcıda “Default.aspx” sayfasını görüntüleyebiliriz.

Aşağıdaki video master page hazırlamak için yaptığımız tüm işlemleri adım adım gösteriyor. Dikkatlice izleyerek kolaylıkla master ve content sayfalarınızı hazırlayabilirsiniz.

Hatırlatmakta yarar var, burada anlattığımız kadarıyla bir HTML tasarımını asp.net master page ve content sayfalarına yerleştirdik. Bu sayfalardaki elemanların asp.net’ e uyarlanması farklı konudur.

Asp.net için master page ve content page yapısını tanıttığımız ve örnek uygulamasını yaptığımız makalemizin sonuna geldik. Kaynak kodları incelemek isterseniz örnek web site projemizi indirebilirsiniz. Master page hazırlama ile ilgili sormak istediklerinizi ya da karşılaştığınız sorunları aşağıdaki yorum bölümünden iletebilirsiniz.

C# ile Windows Api Kullanımı

4
Windows Api Kullanımı - Örnek Proje
Windows Api Kullanımı - Örnek Proje

Bu makalemizde C# ile Windows api kullanımı için 10 adet örnek uygulama göstereceğiz. 10 adet Windows Api‘ sini tek bir C# Windows form projesinde birleştirdiğimiz proje dosyasını ve kaynak kodların PDF dökümanını makalemizin sonunda bulabilirsiniz. Windows Api’ lerinin demo videosu yine makalemizin içeriğinde mevcut.

Windows Api Nedir?

Windows Api‘ leri geliştirdiğimiz Windows uygulamalarında sistemin özelliklerine ulaşabileceğimiz, sistemden veri alıp işleyebileceğimiz kod parçalarıdır. Örneğin geliştirdiğimiz uygulamamızda kullanıcının hard diskindeki boş alan miktarına göre yada ram boyutuna göre bir işlem yapacaksak bu bilgileri almanın yolu Windows Api’leri kullanmaktır.

Windows Api Kullanımı - Örnek Proje
Windows Api Kullanımı – Örnek Proje

Çok çeşitli amaçlar için geliştirilmiş Windows Api’ leri mevcuttur. Örneğin DVD sürücünün kapağını açmak, diskteki boş alan miktarını görmek, cihaz batarya ile çalışıyorsa batarya doluluk oranını görmek için kullanılabilecek apiler mevcuttur.

Örnek projemizdeki Api’ leri kısaca açıklayalım;

Ses Düzeyi Ayarlama: Sistemin ses düzeyini ayarlamak için kullanılır. Arka planda çalan sistem ses tonunun sesini doğrudan buradan ayarlayabilirsiniz.

DVD Sürücü Aç: Eğer sisteminizde yerleşik bir optik sürücü varsa bu düğme ile sürücünün kapağını açabilirsiniz.

DVD Sürücü Kapat: Sisteminizdeki optik sürücü Windows tarafından kapak kapatma özelliğini destekliyorsa (genelde masaüstü cihazlar) sürücünün kapağını kapatır.

Mesaj görüntüle: Message box, basit bir Win Api örneğidir.

Sistem bilgisi görüntüle: Sistemin işlemcisi hakkında temel bilgileri verir.

Geri dönüşüm kutusu boşalt: “Geri dönüşüm boşalt” penceresini çalıştırır, evet seçeneği seçilirse geri dönüşüm kutusundaki çöpler silinir.

HDD Durumu: Sürücü harfi belirtilen hard disk bölümünün toplam boyutu, boş alan miktarı gibi bilgileri getirir.

Ağ Bağlantısı: Sistemin ağ bağlantı durumu ile ilgili verileri getirir.

Batarya Durumu: Cihaz batarya ile çalışıyorsa, besleme durumunu, şarj yüzdesi gibi bilgileri getirir.

Ram Durumu: Anlık olarak RAM bellek bilgisini getirir. Toplam bellek miktarı, kullanılan bellek miktarı gibi verileri sağlar.

Görevler: Görev yöneticisinden görebileceğiniz çalışan uygulamaların listesini getirir.

Yukarıda sıraladığımız Windows Api’ lerini içeren örnek projenin demo videosunu aşağıdan izleyebilirsiniz.

Projemizde yer alan örnek 10 Windows Api‘ sinin kullanım amaçları yukarıdaki gibi. Örnek projeyi indirmek için linke tıklayabilirsiniz. Projenin kaynak kodlarının yer aldığı PDF dökümanını buraya tıklayıp indirebilirsiniz. Windows Api kullanımı hakkında sormak istediklerinizi yada karşılaştığınız sorunları aşağıdaki yorum bölümünden iletebilirsiniz.

Visual Studio Görünüm Değiştirme

0
Visual Studio Görünümü Değiştirme
Visual Studio Görünümü Değiştirme

Bu yazımızda Visual Studio görünümünü değiştirmeyi anlatacağız. Mevcut renk düzenini, editör penceresindeki yazı tipini ve renklerini özelleştirebileceğimiz eklenti ve ayarların nasıl yapılacağını 2 adımda anlatacağız.

Visual Studio Tema Değiştirme

En yaygın kullandığımız IDE’ lerden biri olan Visual Studio’ nun renk düzenini değiştirmek, özelleştirmek isterseniz bunun için çok pratik bir yok var. “Visual Studio Color Theme Editor” eklentisi ile alternatif bir çok tema arasından size uygun olanını seçebilir yada kendi renk temanızı oluşturabilirsiniz.

Eklentiyi kurmak ve temamızı değiştirmek için aşağıdaki adımları takip edebilirsiniz.

1- Visual Studio’ da “Tools > Extensions And Updates > Online” ile eklenti yükleme penceresini açtık.
2- Buradan arama kutusunu kullanarak “Visual Studio Color Theme Editor” eklentisini aradık.
3- Sonuç listesinden eklentimizi seçip kurduk, Visual Studio’ yu yeniden başlattık.

Aşağıdaki videoda tema değiştirme adımları gösterilmiştir.

Visual Studio Editör Renklerini Değiştirme

Bu adımda ise Visual Studio’ nın kod editörünün renk düzenini değiştireceğiz. Bunun için bi eklentiye ihtiyaç duymuyoruz. “.vssettings” uzantılı bir Visual Studio ayar dosyası editörümüzün renk düzenini özelleştirmek için yeterli olacak.

studiostyl.es” editör renk düzeni ve yazı tiplerinin paylaşıldığı bir site. Bu yazıyı yazdığımız sırada 3236 şema ücretsiz indirilebilir durumdaydı. Bu siteye girerek beğendiğiniz bir şemayı indirip Visual Studio kod editöründe kullanabilirsiniz.

İndirdiğimiz şemanın kod editörüne uygulanma adımları aşağıdaki gibidir.

1- Beğendiğimiz şemanın sayfasından “download” düğmesi ile şema indirilir.

2- Visual Studio’ da “Tools > Import and Export Settings” yoluyla ayar sihirbazını açtık.

3- “Import Selected Environment Setting > No, just import new settings” seçeneği ile son adıma geldik.

4- “Browse” düğmesi ile indirdiğimiz ayar dosyasını gösterdik. “Next > Finish” ile de ayarlarımızı uyguladık.

Aşağıdaki videoda kod editörünü özelleştirme işlemleri adım adım gösterilmiştir.

2 basit adımda Visual Studio’ yu istediğimiz renk düzenine kavuşturduk. Renk düzeni yada editör şeması değiştirmek ile ilgili sormak istediklerinizi ya da karşılaştığınız sorunları aşağıdaki yorum bölümünden iletebilirsiniz.

Java Sorunu Çözümü ve Java Güncelleme

0
Java sorunu çözümü
Java sorunu çözümü

Daha önce hakkında ayrıntılı bilgi verdiğimiz Java‘ nın, genellikle 64 bit sistemlerde karşılaşılan çalışmama yada etkinleşmeme sorununun çözümünü anlatacağız.

Java ve JRE Nedir?

E-imza, Kayıtlı Elektronik Posta (KEP), Elektronik Belge/Dokuman Yönetim Sistemleri (EBYS/EDYS),  UYAP gibi bir çok kurumsal çözüm ile pek çok oyun Java altyapısını kullanır. Dolayısı ile kullanıcılar bu sistemler üzerinde işlemlerini gerçekleştirmek için kendi bilgisayarlarında Java JRE denilen programları bulundurmalıdırlar. JRE, Java ile geliştirilmiş yazılımların kullanıcılar tarafında çalıştırılması için gerekli bir programdır. Genellikle Java 32 bit üzerine geliştirilmiş olan yazılımları kullanırken 64 bit sisteme sahip kullanıcılar sorunlarla karşılaşır.

Google Chrome’ un 42. sürümünden itibaren NPAPI desteğini durdurması ile birlikte çok daha fazla kullanıcı Java sorunu yaşamaktadır. Java ile ilgili tüm sorunların çözümünü aşağıdaki 2 adımda (Java Güncelleme ve 64 bit Java sorunu çözümü) anlatacağız. Bu adımlara geçmeden önce Java ile ilgili işlemlerinizi sorunsuz yürütebilmek için Internet Explorer ya da Mozilla Firefox tarayıcısının güncel sürümünü kullanmanızı tavsiye ederiz.

Java Güncelleme

Java güncelleme işlemi (daha önce kurulmadıysa Java kurulumu) için Java resmi sitesi Java.com‘ dan “Ücretsiz Java İndirme” düğmesini tıklayıp güncel Java sürümünü bilgisayarımıza kuruyoruz. Kurulum adımları aşağıda gösterilmiştir. Offline kurulum ve diğer Java indirme seçenekleri için “manual” sayfasına bakabilirsiniz.

Java Sorunu Çözümü ve Java Güncelleme
Java Sorunu Çözümü ve Java Güncelleme

Videoyu çekerken kullandığımız sistem 64 bit olmasına rağmen biz 32 bit sürümünü kurduk. Diğer kullandığınız sürücüler yada programlar 64 bit Java yüklemeye zorluyorsa, sisteminize aynı anda hem 32 bit hemde 64 bit sürümleri kurabilirsiniz.

Videoda gösterdiğimiz adımlar ise şöyle;

  • Java resmi sitesinden indirme işlemi,
  • Standart kurulum adımları,
  • Kurulum tamamlandıktan sonra otomatik açılan tarayıcı sayfası aracılığı ile sürüm doğrulama işlemi.

64 bit Java Sorunu Çözümü

Java kurulumunu tamamlamış olmamıza rağmen, Java’ nın sürüm doğrulama sayfasında Java yazılımı algılanmayabilir. Bu sorunun çözümü için yapmamız gereken çok basit bir işlem var.

Java sorunu çözümü için yaptığımız işlemin adımları şöyle;

  • Bilgisayar > C Sürücüsü > Program Files (x86) > Java adımlarını takip ederek JRE’ nin bulunduğu klasörün sürücüdeki adresini kopyaladık,
  • Bilgisayar özelliklerinden “Gelişmiş sistem ayarları” penceresini açtık,
  • “Gelişmiş” sekmesinden “Ortam Değişkenleri” düğmesine tıkladık,
  • “Yeni” düğmesi ile yeni bir ortam değişkeni tanımladık.
100BeğenenlerBeğen
100TakipçilerTakip Et
124TakipçilerTakip Et
100TakipçilerTakip Et
100AboneAbone Ol