Ana içeriğe atla

Kayıtlar

C# etiketine sahip yayınlar gösteriliyor

C# E-Mail, E-Posta Doğruluğunu Kontrol Etme Yöntemleri

C# programlama dilinde yazılım geliştiriyorsanız çok kullanacağınız, hatta her yeni projede mutlaka gerekli olacak işlemlerden bir tanesi mail kontrolüdür. Mail kontrolü ile kastım girilen mail adresinin gerçekten mail adresi olup olmamasını kontrol etmektir. Amaç mail doğru formatta mı bunu kontrol etmek. Yoksa mail adresinin çalışıp çalışmadığını test etmek istiyorsanız bunun için doğru yöntem mail adresine aktivasyon maili atmak olabilir. Buradaki amacımız daha çok bizimsel olarak mail adresi doğru formatta mı onu kontrol etmek.

Visual Studio Go To Definition Çalışmıyor Sorununun Çözümü

Visual Studio ile çalışırken karşılaşacağınız sorunlardan bir tanesi "Cannot navigate to the symbol under the caret" olabilir. Bu sorunun kesin çözümü için yapılması gerekenler bu kısa makalede anlatılacaktır. Ayrıca bu sorunu çözeümünün ekran görüntülerini de sizinle paylaşacağım. Öncelikle bu hatanın neden oluştuğundan bahsetmek istiyorum. Bu sorunun temel nedeni Visual Studio Go To Definition eklentisine kullandığınız programlama dilinin tanıtılmaması veya bir şekilde bu tanıma işleminin devre dışı kalması ile alakalı olabilir.

Konum Verilerinin Veritabanında Tutulması

Yazılımla uğraşan ve ya bir yazılım projesinde yer almış herkesin karşılaştığı bir durum olsa da bu konu profesyonellik gerektiren bir konu. Zira sadece  longitude ve latitude verilerinin ayrı-ayrı double olarak tutulması bu verilerin işlenmesi konusunda gelecekte problemler ortaya çıkmasına neden olabilir. Eğer konum verileri işlenmeyecekse sadece veri olarak tutulacaksa o zamanda ayrı-ayrı double değerini tutmakta bir sakınca yoktur. Ama örneğin iki konum arasındaki mesafe hesaplanması ve ya noktalardan oluşan poligonun alanının hesaplanması gereken durumlarda bu yapıyı kullanmak yazılımınız için extradan veriler üzerinde işlem yapmanız  gerektirecek. Bu durumu çözmek için her programlama dilinde ayrı ayrı çözümleri vardır. Ben burada SQL Server .net ve ORM olarak da Entity framework baz alarak anlatacağım. Siz bunu kullandığınız programlama dili ve ORM'ye veritabanı yazılımına göre değiştirebilirsiniz.

C# Programlama Dilinde RIPEMD160 Hash Algoritması VE Uygulama Örneği

C# programlama dilinde bir çok hash algoritması ile birlikte RIPEMD160 algoritması bu dili kullananların hizmetine sunulmuştur. RIPEMD160 hash algoritmalarının projelerde kullanılabilmesi için projeye System.Security.Cryptography isim uzayının eklenmesi gerekiyor. Bu ekleme işlemi haricinde RIPEMD160 algoritmasında bitler düzeyinde işlem yaptığı için ilk önce hash algoritması uygulanacak metnin byte dizisine dönüştürülmesi gerekiyor. Bu işlemden sonra elde ettiğiniz şifreli metin üzerinde de Replace işlemi yapacağız. Burada çok önemli bir nokta vardır ki RIPEMD160 algoritması algoritmayı uygularken byte dizisi üzerinde işlem yaptığı için her türlü elektronik veri bu algoritma kullanılarak hashlene bilir.

C# Programlama Dilinde HMACMD5 Hash Algoritması VE Uygulama Örneği

HMACMD5 algoritması MD5 algoritması ile simetrik şifreleme mantığının birleştirilmesi ile oluşturulmuş bir hash algoritmasıdır.  MD5 bilinen hash fonksiyonları arasında en eskilerden biridir. Zamanla hash fonksiyonlarının sayısının artması ve MD5 algoritmasının güvensiz algoritma olarak değerlendirilmesinden dolayı kullanımı da çok azalmıştır.  Bu yüzden hash fonksiyonlarının en çok kullanım alanlarından biri olan şifrelerin veri tabanında tutulması için tercih edilmesi çok doğru bir yaklaşım değildir.    Buna rağmen algoritma işlem süresinin kısa olmasından dolayı MD5 algoritması küçük uygulamalarda kullanılmaktadır. HMACMD5 algoritmasının MD5 algoritmasından farkı ise algoritmanın uygulanması sırasında kullanılan anahtarla ilgilidir. Yani MD5 algoritmasında şifrelenecek metin verilir ve algoritma sonucu nerde uygulanmasından bağımsız olarak aynı sonucu üretir. Bunun içinde HMACMD5 algoritması geliştirilmiştir. Yani algoritma ile birlikte kullanılan şifre girdiğiniz şifreye öz

C# Programlama Dilinde MD5 Hash Algoritması VE Uygulama Örneği

MD5 bilinen hash fonksiyonları arasında en eskilerden biridir. MD5 algoritmasının ilk yazıldığı senelerde ücretli olarak satılıyordu. Zamanla hash fonksiyonlarının sayısının artması ve MD5 algoritmasının güvensiz algoritma olarak değerlendirilmesinden dolayı zamanla kullanımı da çok azalmıştır. Bu yüzden hash fonksiyonlarının en çok kullanım alanlarından biri olan şifrelerin veri tabanında tutulması için tercih edilmesi çok doğru bir yaklaşım değildir. MD5 algoritması genelde metinlerin bir birine eşit olmasını test etmek için uygulamalarda kullanılabilecek algoritmalar arasında gösterilebilir. Ama çok güvenilirlik gereken durumlarda kullanılmaması tavsiye edilir. Bu makalemde şuana kadar kısaca MD5 algoritmasından bahsettim. Asıl amacım ise MD5 algoritmasını C# programlama dilinde kullanabilmek için gerekli fonksiyonu size sağlamaktır.

C# Programlama Dilinde SHA512 Hash Algoritması VE Uygulama Örneği

C# programlama dilinde bir çok hash algoritması ile birlikte SHA512 algoritması bu dili kullananların hizmetine sunulmuştur. SHA512 hash algoritmalarının projelerde kullanılabilmesi için projeye System.Security.Cryptography isim uzayının eklenmesi gerekiyor. Bu ekleme işlemi haricinde SHA512 algoritmasında bitler düzeyinde işlem yaptığı için ilk önce hash algoritması uygulanacak metnin byte dizisine dönüştürülmesi gerekiyor. Bu işlemden sonra elde ettiğiniz şifreli metin üzerinde de Replace işlemi yapacağız. Burada çok önemli bir nokta vardır ki SHA512 algoritması algoritmayı uygularken byte dizisi üzerinde işlem yaptığı için her türlü elektronik veri bu algoritma kullanılarak hashlene bilir.

C# Programlama Dilinde SHA384 Hash Algoritması VE Uygulama Örneği

C# programlama dilinde bir çok hash algoritması ile birlikte SHA384 algoritması bu dili kullananların hizmetine sunulmuştur. SHA384 hash algoritmalarının projelerde kullanılabilmesi için projeye System.Security.Cryptography isim uzayının eklenmesi gerekiyor. Bu ekleme işlemi haricinde SHA384 algoritmasında bitler düzeyinde işlem yaptığı için ilk önce hash algoritması uygulanacak metnin byte dizisine dönüştürülmesi gerekiyor. Bu işlemden sonra elde ettiğiniz şifreli metin üzerinde de Replace işlemi yapacağız. Burada çok önemli bir nokta vardır ki SHA384 algoritması algoritmayı uygularken byte dizisi üzerinde işlem yaptığı için her türlü elektronik veri bu algoritma kullanılarak hashlene bilir.

C# Programlama Dilinde SHA256 Hash Algoritması VE Uygulama Örneği

C# programlama dilinde bir çok hash algoritması ile birlikte SHA256 algoritması bu dili kullananların hizmetine sunulmuştur. SHA256 hash algoritmalarının projelerde kullanılabilmesi için projeye System.Security.Cryptography isim uzayının eklenmesi gerekiyor. Bu ekleme işlemi haricinde SHA256 algoritmasında bitler düzeyinde işlem yaptığı için ilk önce hash algoritması uygulanacak metnin byte dizisine dönüştürülmesi gerekiyor. Bu işlemden sonra elde ettiğiniz şifreli metin üzerinde de Replace işlemi yapacağız. Burada çok önemli bir nokta vardır ki SHA256 algoritması algoritmayı uygularken byte dizisi üzerinde işlem yaptığı için her türlü elektronik veri bu algoritma kullanılarak hashlene bilir. 

C# Programlama Dilinde HMACSHA1 Hash Algoritması VE Uygulama Örneği

C# programlama dilinde SHA1 hash algoritması ile birlikte bu algoritmanın simetrik algoritma veya simetrik şifreleme mantığı ile birleştirilmiş HMACSHA1 algoritması da vardır. HMACSHA1 algoritmasının temel amacı SHA1 algoritmasındaki şifreleme mantığını simetrik şifreleme ile birleştirerek bir güvenlik katmanı daha eklemektir. Algoritma çıktısı 40 karakterden ibaret olan SHA1 algoritmasının mapping yapılarak çözülmesi zor olsa da imkansızdır diyemeyiz. Simetrik algoritmayla birleşmesi ise şifrelenmiş bir metnin çözülmesini çok zorlaştırır. Bu açıdan bakıldığında HMACSHA1 algoritmasının kullanılmasının güvenlik açısından SHA1 algoritmasına göre daha avantajlı olduğunu söyleyebiliriz.

C# Programlama Dilinde SHA1 Hash Algoritması VE Uygulama Örneği

C# programlama dilinde bir çok hash algoritması ile birlikte SHA1 algoritması bu dili kullananların hizmetine sunulmuştur. SHA1 hash algoritmalarının projelerde kullanılabilmesi için projeye System.Security.Cryptography isim uzayının eklenmesi gerekiyor. Bu ekleme işlemi haricinde SHA1 algoritmasında bitler düzeyinde işlem yaptığı için ilk önce hash algoritması uygulanacak metnin byte dizisine dönüştürülmesi gerekiyor. Bu işlemden sonra elde ettiğiniz şifreli metin üzerinde de Replace işlemi yapacağız. Burada çok önemli bir nokta vardır ki SHA1 algoritması algoritmayı uygularken byte dizisi üzerinde işlem yaptığı için her türlü elektronik veri bu algoritma kullanılarak hashlene bilir. 

C# Hash Fonksiyonları Kütüphanesi

Bu makalemde temel amacım C# programlama dilini kullananlar için yazdığım hash kütüphanesini paylaşmaktır. Kütüphane için hash algoritmaları arasında en çok kullanılanlardan MD5 , SHA1 , SHA256 , SHA384 , SHA512 uygulamaları bulunmaktadır. Ayrıca her algorimanın üzerine tıklayarak da algoritma detayını görebilirsiniz. Bu makalemde temel amacım bir kütüphane halinde hash algoritmalarını kullanabilmeniz için kütüphane sağlamak. Bu kodları bir yere kaydederek her zaman kullanabilirsiniz. Blog içinde hash algoritmaları ile ilgili bir çok makale de yer almaktadır. Bu makalelere aşağıdaki linklerden erişebilirsiniz. 1.  C# Programlama Dilinde SHA1 Hash Algoritması VE Uygulama Örneği 2.  C# Programlama Dilinde HMACSHA1 Hash Algoritması VE Uygulama Örneği 3.  C# Programlama Dilinde SHA256 Hash Algoritması VE Uygulama Örneği 4.  C# Programlama Dilinde HMACSHA256 Hash Algoritması VE Uygulama Örneği 5.  C# Programlama Dilinde SHA384 Hash Algoritması VE Uygulama Örneği 6.  C# Programlama

C# Nullable ve HashValue Nedir? Nasıl Kullanılır?

C# programlama dilinde değişken tanımlarken ve kullanırken dikkat etmemiz gereken noktalardan bir tanesi de tanımladığımız değişkenin içeriğinin NULL olma durumunun kontrol edilmesidir. Özellikle veri tabanından gelen verilerin, client tarafından gelen istek içeriklerinin NULL olma olasılığı çok fazladır. Bu da kontrol edilmezse özellikle değer tipli değişkenlerle çalışırken hatalara yol açabilir. Bu sorunu çözmek için kullanılan yöntem Nullable veya T? Yapısını kullanmaktır. T yerine değer tipli değişken türlerini yazabilirsiniz. Örneğin: Nullable veya int? , Nullable veya long? Nullable ile birlikte kullanabileceğiniz değişken türlerine "int", "long", "float", "double", "decimal", "char", "bool", "byte", "short", "struct", "enum", “DateTime”  örnek verilebilir. Değişken tanımlarken örneğin int türüne NULL değeri atarsanız kullandığınız IDE size hata verecektir. Bu sorunu

C# - Çift Soru İşareti Operatorü - ??

C# ile çalışırken çok kullanışlı olan operatörlerden bir tanesi de çift soru işareti( ?? )'dir. Bu operötün işlevini anlayabilmek için C# programlama dilinde Nullable değişkenler konusu iyi bilmek gerekiyor. Eğer bu konuyu bilmiyorsanız konuyu anlayabilmek için " C# Nullable ve HashValue Nedir? Nasıl Kullanılır? " konusuna bakmanızı öneririm. Konuyu anlatabilmek açısından bir örnek üzerinden açıklayacağım. Bunun için Nullable int türünde değeri null olan bir değişken tanımlayalım.