.Net Core İle QR Kod Okuma

Merhaba Arkadaşlar,Epey zamandır bir makale yazamıyordum iş yoğunluğundan kaynaklı. Bu yüzden biraz daha işe yarar bir makale ile tekrar giriş yapmak istedim. Umarım sizin için de faydalı bir yazı olur. QR Kod Nedir? İngilizcedeki Quick Response kelimelerinin baş harlerinden oluşan bir görsel kod dizaynıdır. Aslında ülkemizde de çok uzun zamandır kullanımı çok yaygın olan barkodların (Barcode) bir farklı ve gelişmiş versiyonudur. Bildiğimiz üzere barkodlar ile çok karmaşık verileri saklamak mümkün değildi. Genelde sadece ürünü veya …

Gelişmiş Try Catch Kontrolü ve Yönetimi

Merhaba Arkadaşlar. Try Catch blokları bir çoğumuzun bildiği gibi yazılım dünyasında oldukça fazla kullanılan ve bir çok noktada hayat kurtarıcı niteliğe sahip olan kod bloklarıdır. “Try” kısmında yazmış olduğunuz kodların herhangi bir yerinde programınızın kullanıcı hatası veya beklenmeyen bir sistem hatası gibi durumlarda patlamasını önleyip, size durumu bildiren hatalar döndürebilmektedir. Ancak tabii ki bir çok zaman bu kontrolü olduğu gibi kullanmak biraz karmaşıklığa yol açabilmektedir. Bu makalede sizlere anlatmak istediğim konu da bu kontrolü kendi …

Dapper Repository Kullanımı ve Örnek Proje – 3

Şimdi de gelin başlangıç tabloları ve verileri ile veri tabanımızı ve Data katmanımızın içeriğini oluşturalım. Bu aşamada öncelikle veri tabanında ne gibi işlemler yaptığımı kısaca anlatıyor olacağım. Ancak projenin en alt kısmında Github hesabıma ulaşan bir link göreceksiniz. O bağlantıya tıklayarak projeyi GitHub üzerinden çekebilirsiniz. Ayrıca projenin ana dizininde en güncel veri tabanı SQL koduna da görebilirsiniz. Şimdi veri tabanımıza geçelim. Öncelikle veri tabanımızda şimdilik iki adet tablo kullanacağız. Bunlardan birincisi kullanıcıları tutacağımız “Users” tablosu. …

Dapper Repository Kullanımı ve Örnek Proje – 2

Evet Arkadaşlar, bir aradan sonra projemize artık start verelim istedim. Özellikle bundan sonra daha hızlı ilerleyerek katmanlı mimari ile projemizi nasıl hayata geçireceğimizi görüyor olacağız. Öncelikle lafı fazla uzatmadan yeni bir .net core proje açarak işimize başlayalım. Özellikle görseller ekleyerek altlarına da açıklamalar yazarak ilerlemek istiyorum ki daha anlaşılır olsun. Lütfen takıldığınız bir husus olur ise yorum kısmından sormayı unutmayın. Visual Studio üzerinden “File > New > Project” diyoruz. Buradan ASP.NET Core Web Application seçiyoruz …

TryParse() Kullanımı

C# içerisinde belki de en çok kullandığımız metodlardan biridir. Bir nesneyi dönüştürürken çeşitli hatalar ile karşılaşabiliriz. Bu hataların başında da “object reference not set to an instance of an object” yani “nesne başvurusu bir nesnenin örneğine ayarlanmadı” hatası gelir. Bu hatanın en büyük nedenlerinden biri objenin içeriğinin boş olması veya istediğimiz tipe uygun olmamasıdır. Burada alabileceğimiz hatalardan bir diğeri de; “converting data type varchar to numeric” veya türevi hatalardır. Genel kullanım olarak kurslar dahil bir …

.Net Core ile app.settings Dosyasından Değer Okuma

.Net Core’un hayatımıza girmesi ile aslında pek çok yazılımcı bir bakıma rahat bir nefes aldı diyebiliriz. Elbette yaygın olarak bilindiği üzere bu teknolojinin en önemli ve güzel tarafı şimdilik %90 diyebileceğimiz ve muhtemelen yakında %100 olacak platform bağımsızlığıdır. Örneğin burada yazdığınız bir uygulamayı linux, macOS, windows gibi platformların hemen hepsinde çalıştırabiliyor olmanız, bu teknolojinin getirdiği en büyük yeniliklerin başında geliyor. Tabii ki buradaki %90 tabiri biraz afaki. Zira tüm sınıfların SDK’ları %100 oranında tamamlanmamış olasa …

Incorrect syntax near ‘OFFSET’. Invalid usage of the option NEXT in the FETCH statement “in Entity Framework core”

Merhaba Arkadaşlar, Yine baş belası olabilen bir hatayla karşı karşıyayız. Türkçesi:‘OFFSET’ yakınında yanlış sözdizimi. “Entity Framework çekirdeğinde” FETCH deyiminde NEXT seçeneğinin geçersiz kullanımı. olan bu hatanın aslında sebebi development ve/veya test sunucularınız ile production sunucularınızdaki SQL versiyonları. Yani diyelim ki SQL Server 2012 ile geliştirme ve/veya test yaptınız ancak canlıya geçerken SQL Server versiyonunuz 2008 veya 2008 R2. İşte bu durumda Entity Framework tarafında bu hatayla karşılaşırsınız. İnternette envayi çeşit çözüm yöntemi sunulmuş iken aslına …

Roslyn\CSC.exe Hatası

roslyn\csc.exe yolunun bir parçası bulunamadı. Bir çoğumuzun başına gelmiştir belki de. Özellikle bir projeyi bir bilgisayardan başka bir bilgisayara taşıdıktan sonra eğer bin/debug klasörünün tamamını almamış isek, rastlayabileceğimiz nerede ise kaçınılmaz hatalardan biri. Aslında 2 çözüm yolu var. Birincisi oldukça basit; Roslyn csc.exe Hatası ve Çözümü (1) Visual Studio’dan Solution üzerine sağ tıklayın ve Clean Solution deyin. Ardından da tekrar Solution’a saü tıklayıp Rebuild Solution deyin. Bir süre rebuild işleminin bitmesini bekledikten sonra projenizi çalıştırabilirsiniz. …

C# İle XML Attribute (Özellik) Okuma

XML kullanımı yavaş yavaş azalıyor olsa da yine de XML’ler hala daha bir çok noktada vazgeçilmezlerimiz konumunda. Yerini yavaş yavaş JSON’lara bırakıyorlar. Lakin egemenlikleri hala tamamen sönümlenmiş değil. Bu neden ile basit bir şekilde XML Adres’ten XML’i ve attribute’lerini okumak için hızlıca bir örnek paylaşmak isterim. Evet, konu epey basit oldu farkındayım. Ancak gerçekten okumak bu kadar basit olduğu için konuyu kısa ve net ele almak istedim. Node’lar halinde XML okuma konusunu zaten önceden yazmıştım. …

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 …

AntiForgeryToken ve MVC

Merhaba Arkadaşlar, Bugün sizlere antiforgerytoken ile sitelere yapılan atakların bir kısmını çözümlemekten bahsetmek istiyorum. Aslında çoğumuzca aşina olunan bir konu. Zira .net bu konuda antiforgerytoken implamantasyonunu yapar iken oldukça basit kullanımı olacak şekilde sunmaya özen göstermiş durumda. Sadece bir attribute ekleyerek bu özelliği ilgili metodumuzda aktif edebiliyoruz. Peki Nedir bu antiforgerytoken? Özellikle MVC’den önceki teknolojilerin herhangi biri ile yazılım geliştirmiş iseniz bu konuyu daha net kavrayabilirsiniz. Diyelim ki bir formunuz var. (Üyelik, Giriş, Bilgi, İletişim, vb…) Ve …

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 …

Kendo UI Grid Excel Export – Lütfen Bekleyin

Merhaba Arkadaşlar, Bugün Kendo UI Toollarından Grid’i kullananlara veya yeni kullanmaya başlayanlara bir konuda bilgi vermek istedim. Eğer Telerik‘in UI araçlarıyla hiç uğraşmadıysanız bu link üzerinden Kendo UI Grid Tool’una ulaşabilirsiniz: Kendi UI Grid Bilenler bilir, bir de bu tool’un kimi zaman oldukça faydalı olabilen bir özelliği de Excel Export özelliğidir. Ancak olay tamamen UI’da geçtiği için Back-End’ciler epey karnını ağrıtan problemler ile karşılaşabilirler. Burada bahsini etmek istediğim husus, Kendo UI Grid’de Export Excel dedikten …

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 …

Could not resolve mscorlib for target framework ‘.netframework, version=v4.5.1’.

Bilgisayarınızda .Net 4.5.1 Framework’ün kurulu olmasına ve tekrar kurmak istediğinizde zaten kurulu hatasına aldırmayın. Aşağıdaki adresten Framework Developer Kit’i yüklemeniz gerekiyor. Sonrasında sorununuz ortadan kalkmış olacaktır. 🙂 https://www.microsoft.com/en-us/download/details.aspx?id=40772 Haydi geçmiş olsun… 🙂

MVC ViewBag ve ViewData Farkları, Ortak Noktaları

Aslına bakarsanız ViewBag ve ViewData arasında bilindik aman aman bir fark bulunmamaktadır. Tanım Syntax’ları biraz farklı olsa da sonuç itibariyle yaşam döngüleri tek seferliktir ve kesinlikle ikince postback işleminde yaşayamamaktadırlar. Niye iki adet farklı tip var diyecek olursak aslında sebebi ViewData’nın MVC 2, ViewBag’in ise MVC 3 ile karşımıza çıkmış olmasıdır. Şüphesiz ki ViewData’dan ViewBag’e geçişte daha kolay bir kullanım şekli amaçlanmıştır. Kullanım Şekilleri ise aşağıdaki gibidir; ViewData[“Icerik”] = “Merhaba Dünya :)” ViewBag.Icerik = “Merhaba …

EntityFramework Stored Procedure Çalıştırma

EntityFramework için bizi Ado.Net’in standart mekanizması olan SqlCommand’lar, SqlConnection’lar deryasından kurtaran en büyük nimet demek yanlış olmaz. Faydaları saymakla bitmez, karmaşık sogulardan, sürekli bağlantı açıp kapatmaktan ve gibi gibi bir ton angaryadan. Geri dönüş tiplerini belli şartlar altında ayarlayabilmek, gereksiz sorgulardan veritabanımızı soyutlayabilmek, Insert, Update, Delete gibi işlemlerimizi çok daha Object Oriented hale getirmek gibi bir sürü konu sayabiliriz. Elbette kimine göre ufak tefek kimine göre biraz daha büyük çaplı sayılabilecek bazı performans sıkıntılarıyla karşımıza …