4 Nis

C# LINQ ile Rastgele Şifre Üretmek

Bu yazıda System.Linq kütüphanesinden faydalanarak rastgele şifre üretmenin ne kadar pratik ve basit olduğunu inceleyeceğiz. Bu pratik çözüme burada rastladım ve herkese faydalı olacağını tahmin ederek paylaşmak istedim. Olayın gelişimini incelediğimizde Enumerable sınıfının Repeat fonksiyonundan faydalanıldığını görüyoruz. Enumerable.Repeat fonksiyonunun syntax düzeni...
Read more »
1 Nis

Asp.Net Web Api ile JSON sonuçlarını Camel Case şeklinde göstermek

Asp.Net Web Api uygulamalarında action metodlar tarafından JSON formatında sunulan nesneler, C# ile oluşturulan nesnelerin özellikleri şeklinde oluşturulurlar. Yani C# tarafında oluşturduğumuz bir Product tipi şu şekilde olsun. Bu tipe ait bir nesneyi veya nesne gurubunu Web Api ile dışarı sunmak için: Şeklinde bir Controller...
Read more »
25 Mar

Visual Studio Solution Template Oluşturma

Visual Studio geliştirme aracında yeni proje oluşturma seçenekleri arasında proje türüne göre oluşturulmuş hazır şablonlar bulunmaktadır. Sunulan seçenekler Class Library, Console Application, Asp.Net, WCF v.s gibi uzayıp gider. Seçtiğimiz proje türüne göre bir çalışma ortamı otomatik olarak hazırlanır. Ancak birbirine benzer projeler oluştururken...
Read more »
20 Mar

Asp.net Web Api ve Content Negotiation Kavramı

Günümüzde artık internet dünyası sadece kişisel bilgisayarlarda internet tarayıcıları tarafından görüntülenebilen web sitelerinden oluşmuyor. Mobil cihazlar, Televizyonlar, Akıllı Evler Aletleri v.b gibi birçok cihaz artık internet aleminde kaynak tüketimine dahil olmuş durumdadır. Şüphesiz bu giderek daha da genişleyecek. Bu çeşitlilik...
Read more »
16 Mar

HTTP Content Negotiation Kavramı

Content Negotiation işleyişi HTTP protokolüne özgü bir kavramdır. Anlam olarak tercüme edecek olursak, client ve server arasında yapılan bir içerik anlaşması veya müzakeresidir diyebiliriz.  Amacı, aynı URI ile farklı döküman türlerinde içerik sunabilmektir. Yani daha genel bir ifadeyle kaynak gösterim şeklinin...
Read more »
7 Mar

.Net Framework Gelişim Tarihine Genel Bakış

Microsoft .Net Framework ile ilgili tarihi geçmişe bir göz atarak eskiden günümüze yani 4.5.1 framework sürümüne kadar nasıl bir gelişimin olduğunu genel hatlarıyla incelemeye çalışalım. .Net Framework 1.0: 2002 yılında duyurulmuş ilk versiyonsdur. Visual Studio .Net geliştirme aracı ile birlikte sunulmuştur. .Net...
Read more »
4 Mar

Proje Dizin Yapısı Oluşturmak

Projelerimizi oluştururken kendimize bir dizin standardı belirleyip, belirlediğimiz bu düzene sadık kalarak ilerlemek işlerimizi bir nebze kolaylaştıracaktır. Şu an için kodlama standartları gibi geleneksel bir standart yayınlanmamış olsa da programcıların yaygın olarak kullandığı bir dizin yapısı vardır.  Bu dizin yapısına göre kaynak kodlar, dış...
Read more »
27 Şub

Kitap – Domain Driven Design

Kitap tavsiye kategorisinin bu bölümünde Domain Driven Desing Tackling Complexity in the Heart of Software isimli kitaptan bahsedeceğiz. Kitap Eric Evans tarafından kaleme alınmış olup dili ingilizcedir. Basılı kitabı buradan temin etmek mümkündür. Kitapta karmaşık yapıdaki yazılımlar geliştirirken nasıl bir yazılım tasarımının uygulanması gerektiği konusu ele alınmıştır. Bu...
Read more »
21 Şub

Asp.Net Web Api Message Handler Yapısı

Asp.Net Web Api 2 çatısı bünyesinde, Message Handler tipleri HTTP talebini alarak geriye yine HTTP cevap döndüren somut sınıflardır. Message Handler tipleri Web Api iletim hattında(pipeline) adeta bir zincir misali dizilmiş şekilde bulunur. Bu zincirdeki ilk handler talebi alır yapması gereken işlemi bitirdikten sonra talebi...
Read more »
15 Şub

Asp.Net Web Api ile Kullanıcı Doğrulama ve Yetkilendirme

Asp.Net Web Api ile oluşturulan uygulamalar dış dünyaya tamamen açık olmayacaksa yani bazı kaynaklar sadece kayıtlı kullanıcılara sunulacaksa bu noktada Api güvenliğinin sağlanması gerekmektedir. Api güvenliği temelde, sistem kullanıcıların kim olduğunu ve hangi kaynaklara erişebileceğini belirleyen bir mekanizmanın oluşturulması ile sağlanabilir. Güvenlik mekanizmalarının oluşturulmasında...
Read more »