Basic Authentication Kullanımı, Web Servisler İle Kullanım Tekniği

Merhabalar, basit authentication diye bir tabiri eminim yazılım hayatımızın bir noktasında duymuşuzdur ya da yakın zamanda duyacağız. 🙂 Aslında tam da Türkçeleştiği şekilde Basic Authentication, Temel Kimlik Doğrulama anlamını taşımaktadır. Özellikle SOAP yazmış olduğunuz web servisler için (yani asmx) temel güvenlik olarak kullanılmaktadırlar. Elbette temel olduğu için yüksek güvenlikli olacağı kesinlikle düşünülmemelidir. Tek başına kullanımı daha çok bilindik yerler ile paylaşılır iken ve/veya içerdiği datanın çok elzem olmadığı durumlarda söz konusudur. Diğer türlü düşündüğümüzde, daha …

Stopwatch Using (Kullanımı)

Bir önceki yazımda StopWatch nesnesinin nasıl kullanacağını işledim. Bu yazıda kısaca kendi yazdığım using bloğu içerisinde stopwatch kullanımına değineceğim. Öncelikle tam sınıfımız “StopwatchUsing.cs” ismi ile aşağıdaki gibi olacak. Kullanımı ise şu şekilde: Gördüğünüz gibi artık her yerde Stopwatch nesnesi üretip, ayrı ayrı kodlamanız gerekmeyecek. Bu using bloğu içerisine aldığınız her kodun bitiminde süre otomatik olarak bildiriliyor olacak.   Kolaylıklar… 🙂

Stopwatch() ile Kodun Ne Kadar Sürede Çalıştığını Hesaplamak, Çalışan Kodların İşlem Süresini Bulmak

Bir çoğumuzun öğrenmek istediği şeydir, yazdığımız bir kod bloğunun .net CLR tarafında ne kadar sürede derlenip çalıştırıldığını öğrenmek. Yani kod bloğu başlamasından bitişine kadar geçen süreyi ölçmek isteyebiliriz. Bu durum için “System.Diagnostics” kütüphanesi altında tutulan Stopwatch sınıfını kullanabiliyoruz. Öncelikle Objemizi oluşturup start verdikten sonra kodlarımız işliyor ve kodların bitiş noktasında sw.Stop() dedikten sonra sw nesnemizin toplam süresini öğrenebiliyoruz. Bu da bize start – stop arasında geçen süreyi vermiş oluyor. Örnek Kullanım: Gördüğünüz gibi en sonra ElapsedMilliseconds şeklinde …

C# Belleğe Kopyalama – Clipboard Copy

Windows’un klasik CTRL + C (Kopyalama) tuşu işlevini aşağıdaki kod ile gerçekleştirebilirsiniz. Ancak Windows Form uygulamalar dışında bu kodu kullanabilmeniz için ise System.Windows.Forms DLL’ini referans olarak projenize ekleyip aşağıdaki Windows.Form using’i eklemeniz gerekmektedir.   Eğer belleğe bir image(görsel) atmak istiyor iseniz ise aşağıdaki kodu kullanabilirsiniz;  

C# Döngüler, For, Foreach, While Döngüleri, Karşılaştırma

Selam Arkadaşlar, Özellikle yazılım sektöründeki yeni arkadaşlar için kıssadan hisse şekilde bazı çıtır çerez bilgiler verecek makaleler yayınlayayım istiyorum arada bir de olsa. Bu döngüler konusu da bunlardan bir tanesi elbette. Hepimizin bildiği gibi döngüler yazılımın en temel unsurlarından bir tanesi. Farklı alternatifler geliştirilmeye çalışılmış olsa da (linq bunlardan bir tanesi) çoğu zaman bir döngüden daha performanslı bir hal alamayabiliyorlar. Örneğin en basit şekilde şöyle bir testi anlatayım; Tüm ilişkilerden, database, vb… üçüncü parti uygulamalardan …

Chrome excel export data size limit – Kendo UI Grid

Selam arkadaşlar, Bugün size kısa bir konudan bahsedeceğim. Konumuz, benim başıma gelen, kendo ui grid component’i ile karşılaştığım ve üzerine biraz araştırma yaptığım bir konu; Javascript ile belli bir boyutun üstünde excel, pdf, vb… dosyayı export edememe. Hemen aklımıza şu soru gelebilir; “Peki, mozilla, safari, vb… tarayıcılar ile sorun olmuyor mu?”. Bu konuyu bende araştırdım ve test de ettim. Mozilla, vb… tarayıcılar izin verir iken Chrome bu konuda sadece 10.000 KB gibi bir boyuta izin …

C# Sayı Yuvarlama İşlemleri

C# ile temelde bir çok yuvarlama işlevi mevcut. Ancak biz en çok kullanılan 3 yöntemi işleyeceğiz. Aşağıda amaçlarından bahsettiğim gibi en altta da tablo halinde bulabilirsiniz. Yuvarla (Klasik Yuvarlama Mantığı) (Round Kullanımı) Bilindiği üzere, virgülden sonraki sayı 5 ve 5’in üstünde ise yukarı, 5’in altında ise aşağı yuvarlar. Yukarı Yuvarla (Ceiling Kullanımı) Virgülden sonraki sayı ne olursa olsun bir üst rakama yuvarlar. Aşağı Yuvarla (Floor Kullanımı) Virgülden sonraki sayı ne olursa olsun bir alt rakama …

Kelimelerin Baş Harflerini Büyütmek, İlk Harfleri Büyük Yazma

Selamlar, Çoğunuzun bildiği üzere bu tip işlemler genelde mscorlib kütüphanesi ile c# tarafından yürütülür. Burada işlememiz gereken ise string işlemlerine culture sınıfı kullanarak müdahale etmek. Tabi bu müdahaleyi yaparken aynı zamanda da .ToString(), .ToLower(), .ToUpper() gibi method benzeri methodlar haline getirmek. Bu neden ile ToTitleFirstCharacter isminde bir method oluşturacağız. Bu methodu da ExtensionManager sınıfına ekleyerek yapacağız. Aşağıdaki şekilde bir kodumuz olsun. Burada yer alan “kelime” değişkeninde vaadettiğimiz işlemi yapabilmek için aşağıdaki sınıfı oluşturuyoruz.   Kodun tümünü işleyecek olursak …

Google’ın Sitenizi Eklemesini Engelleme

Google’da sitenizi görmek istemeyebilirsiniz. Birden fazla nedenden ötürü sitenizin veya sitenizdeki belli başlı sayfaların google tarafından index’lenmesini istemeyebilirsiniz. Bu gibi durumlarda aslında bahsi geçen nopcommerce sistemi de diğer web yazılımlardan farklı değil kesinlikle. Maalesef Bununla ilgili özel bir plugin yok henüz. Aslında yazmak da son derece mümkün. Zira öyle afilli bir kod yazmaya da ihtiyaç yok bunun için. Hatta nopcommerce ile plugin yazma konularına yakın zamanda ufak ufak değinmek istiyordum, bu konu da başlangıç yazımızın …

C# İle Cmd Sorgusu, Komut Çalıştırma

Cmd ile command prompt üzerinden bir çok komut çalıştırılabilir. Örneğin; run mongod netstat vs… vs… İşte bu ve benzeri bütün komutları c# ile yapmanın da elbette bir yolu var. Şimdi kodumuza geçelim; Kısaca bakacak olursak; startInfo.WindowStyle => Çalışma esnasında command prompt ekranının açılıp açılmayacağı belirlenir. startInfo.WorkingDirectory = @”c:\” => Uygulama (.exe, .dll. vs…) hangi dizinde ise satır bu dizinde çalıştırılacaktır. startInfo.FileName => Çalıştırılacak dosya adı. process.Start() => İşlemin başlatılmasını sağlar. process.WaitForExit() => İşlem bitene kadar …

Windows Servis Oluşturma ve Başlatma

Selam Arkadaşlar, Öncelikle kısaca şu konuya değinelim; Windows Service Ne İşe Yarar? Windows servisler, sisteme yaptırmak istediğimiz rutin belli başlı işlemler var ise onlar zamanlamamıza olanak sağlar. Örneğin, bir backup’ın alınması, bir uygulamanın çalıştırılması, bir uygulamanın hali hazırda çalışıp çalışmadığının kontrol edilmesi ve eğer çalışmıyor ise tetiklenmesi, vb… İşte bu işlerin tümünü basit bir windows servis yazarak hayata geçirebiliriz. Peki Zamanlanmış Görevler (ScheduleTask) İle Farkı Nedir? Zamanlanmış görevler, sizin belirlediğiniz periyotta çalışır ve tekrar o …

Environment Sınıfı

Environment sınıfı aslında adından da anlaşılacağı üzere application’ın çalıştığı ortamın, çevrenin bilgilerini bizimle paylaşır. İçlerindeki bazı bilgilere bakacak olursa da aşağıdaki şekilde özetleyebiliriz. Özellik Tür Açıklama Environment.CommandLine string Uygulamanın çalışmakta olduğu dizini uygulama adı ve uzantısıyla birlikte verir. Environment.CurrentDirectory string Uygulamanın çalışmakta olduğu dizini verir. Environment.CurrentManagedThreadId int Çalışmakta olan ThreadId’yi döner. Environment.MachineName string Uygulamanın çalışmakta olduğu makinanın adını verir. Environment.Is64BitOperatingSystem bool Uygulamanın çalışmakta olduğu işletim sisteminin 64 bit olup olmadığını döner. Environment.Is64BitProcess bool Uygulamanın çalışmakta …

Memory Cache Yöntemi, Artıları ve Eksileri 1

Merhabalar, Bu yazıda Microsoft’un sunmuş olduğu cache, yani ön bellek mekanizmasını ele alacağım. Aslına bakarsanız bu uygulama elbette ram’de epey yer kaplayabiliyor. Ancak eksi yönünün bu olmasına rağmen artıları da yok değil. Bu yazıyı temel anlamda 2’ye bölerek ilerlemek istedim. Bu 1. makalede genel cache mekanizmasına bakacağız. Daha sonra hazırlayacağım 2. makalede ise detay bilgileri vermeye çalışacağım. Gelin şimdi birlikte bakalım. MemoryCache Artıları: Sabit kimi verileriniz için sürekli veri kaynağına (Database) gitmek zorunda kalmazsınız. Verileriniz …

C# Split ile Yazıyı Bölme

Belirteceğimiz char tipindeki bir dizi değişkendeki tüm karakterlere göre string karakter katarını nasıl dizilere ayırabiliriz. İşte kod aşağıda; Sonuç aşağıdaki gibi olacaktır. bolunmusYazi[0] = “lorem ipsum” bolunmusYazi[1] = ” dolar ” bolunmusYazi[2] = “sit amed” Gördüğünüz gibi “char[] ayrac” olarak verdiğimiz “‘,’, ‘-‘” gibi tüm karakterlere göre metnimiz bölündü ve dizi olarak atandı. Umarım işinize yarayacak bir ek bilgi olur…

C# ile Başka Bir Uygulamayı Çalıştırmak

Bu yazıda yazdığımız ve/veya yolunu bildiğimiz ve kendi uygulamamız içerisinde tetiklemek istediğimiz bir application’ı nasıl çalıştırabiliriz bunu paylaşacağım. Aslında kod oldukça basit; İşte bu kadar. “StartInfo.FileName” ile uygulamanın tam yolunu ve dosya adını veriyoruz. process.Start() ile de uygulamayı başlatıyoruz. Peki uygulamamızın bir console uygulaması olduğunu varsayalım ve ekranda görmek istediğimiz bir şey olmasın. Sadece arkaplanda işlemini tamamlayıp çıkması gerekiyor diyelim. Bu durumda process’i start etmeden önce kodumuzu aşağıdaki şekilde iki property ile zenginleştirerek uygulamanın arka …

HttpPost, API Post Etmek ve Response Yorumlama

Merhabalar, Kaynakları bol ancak temiz kodu kısıtlı olan bir konuya kısaca değinelim istiyorum. Elimizde bulunan bir API adresine bir Object’i (Class olabilir) post edip, oradan gelen yanıtı da istediğimiz formata çevirip yakalayabileceğimiz bir fonksiyon. Ben bu methoda kısaca SendRequest diyorum. Kullanımı ise aşağıdaki şekilde; Bilindiği gibi T olarak belirttiğimiz değişken bir generic değişken. Dolayısı ile burada methodu çağırırken <T> olarak belirttiğimiz alana istediğimiz tip değişkeni verebiliriz. Bu şekilde data’mız address değişkenine belirtmiş olduğumuz URL’e post …

C# Console ile Yazı Yazılmasını Bekleme

Aslında nasıl bir başlık bulacağımı bilemedim o yüzden bu başlığı koydum. Önerileriniz varsa da yorum kısmına beklerim 🙂 Olay şu, diyelim ki console ile bir uygulama yazıyoruz ve kullanıcıdan bazı değerler girmesini bekliyoruz. (Diyebilirsiniz ki ne var bunda Console.ReadLine ne işe yarıyor?) Ama durum öyle değil işte. Olay şu ki belirleyeceğimiz süre içerisinde kullanıcı bir şey girmez ise kodlarımız sırayla çalışmaya devam etsin istiyoruz. İşte bunun için “Reader” isminde bir class oluşturup içerisine aşağıdaki kodları …

AppDomain CurrentDomain BaseDirectory

Merhabalar, AppDomain.CurrentDomain.BaseDirectory ne işe yarar bundan kısaca bahsetmek istiyorum. Tabii ki her zamanki gibi elimizin altında bulunmasında da fayda var o da bir sebep. 🙂 Aslına bakarsanız bu yol daha çok ilgili uygulamamızın çalıştığı dizini bulmak için kullanılmakta. Nasıl mı? Diyelim ki bir uygulama yaptınız ve F5 ile uygulamayı çalıştırdığınız anda exe dosyanızın hemen yanına bir şey yazmak veya oradaki bir şeyi çağırmak istiyorsunuz. Bu durumda tabii ki bir kaç yöntem daha var kullanabileceğiniz. Ancak …