Bazen iki tarihin arasında geçen süreyi bulmanız gerekir. Bu kişinin şu anki yaşı olabileceği gibi bir işçinin o gün çalıştığı süre de olabilir. C# bize bu konuda yardımcı olmak için TimeSpan tipini sunar. Bu tipi kullanarak iki tarih arasında geçen süreyi farklı şekillerde alabiliriz. Örneğin iki tarih arasında kaç saat olduğunu bulmak istiyorsak TotalHours özelliğini […]
Error: 1083 The executable program that this service is configured to run in does not implement the service
You develop a windows service application and installed to your machine. When you try to start service you get this error. Possible reason to this error is service name definitions. Check the service name and service installer service name. Both must be the same. For instance this is from service class: and this code is […]
ASP.NET Forms Authentication
Web uygulamaları Internet üzerinden anonim (kimliği belirsiz) ziyaretçiler tarafından kullanılırlar. Kullanıcılar hakkında bilgi toplamak ya da sadece belirli kaynaklara erişimlerini sağlamak istiyorsak öncelikle onların kim olduğunu belirli bir kaynaktan sorgulayıp, doğru kişi olduklarını onaylamamız gerekir. Bu işleme “Kimliklendirme (Authentication)” denir. Web uygulamalarında farklı kimliklendirme yöntemleri olsada Internet üzerinden erişilen uygulamalar için uygun olan kimliklendirme yöntemi “Forms” yöntemidir. […]
Blogroll aynı pencerede açma sorunu
Bir süredir blogengine.net kullanıyorum. Wordpressle tabiki kıyaslanamaz ama .NET muadilleri arasında fena bir yerde değil. Arkadaşlarımın yazılım ile ilgili tecrübelerini paylaştıkları sitelere link vermek için BlogRoll extensionı ana sayfaya ekledim ve bir kaç link tanımladım. Herşey çok güzeldi. Ta ki bir linke tıklayana kadar. Tıkladım ve link benim sayfam ile aynı pencerede açıldı. Hemen panik […]
İstemcide zararlı olabilecek bir değer Request.Form algılandı.
İş yerinde geliştirmekte olduğumuz projelerde şimdiye kadar MVC Framework Preview 3 kullanmaktaydık. ASP.NET ten farklı çalışma mekanizması nedeniyle yukardaki hatayı sık sık alır ve ValidateRequest = false yapmamıza rağmen sorunu aşamazdık. Çünkü post edilen bilgi önce kontroller a düşmekte ve exception oluşmaktaydı. Peki temel olarak bu hatanın nedei neydi. Önce bunu bir hatırlayalım. ASP.NET kullanan […]
Metin içindeki linkleri almak
Regular expressions ile bir metnin verilen şablona uyup uymadığını kontrol edebiliyoruz. Örneğin “girilen eposta uygun bir eposta biçimine sahip mi?” ya da “telefon numarasi geçerli bir telefon numarası mı?” gibi. Benzer şekilde .NET sayesinde verilen bir metin içinde ilgili şablona uyan bölümleri de alma işlemi de gerçekleştirilebiliyor. RegexOptions.Singleline: Tek satır modunu tanımlar. Noktanın anlamını değiştirir. Böylece […]
Web İçerik Okuma
Adresini bildiğiniz bir sayfayı internette gezmekte kullandığını her hangi bir istemcinin (Internet Explorer, Firefox, Opera, Safari, Chrome, vb.) adres satırına yazdığınızda o sayfanın içeriği bilgisayarınıza indirilir ve siz de ekranınızda bu safyayı görürsünüz. Temel olarak adresi yazıp enter tuşuna basarak sunucuya bir istekte bulunursunuz. Sunucu ilgili isteği işler ve size bir yanıt döner. Siz de […]
Cookie Unutma Problemi
Bu sabah üzerinde çalışmakta olduğumuz bir projenin çalışmakta olan cookie yazma okuma metodlarını kullanarak bir geliştirme yapmaya çalıştım. Enteresan şekilde browser kapatılıp tekrar açıldığında cookie kayboluyor ve yazdığım kod yapması gereken işlemleri yapamıyordu. Enteresan diyorum çünkü kullandığım cookie yazma ve okuma metodları sitenin bir çok yerinde kullanılıyor ve her hangi bir sorun yaşanmıyordu. Kodu incelediğimizde […]
Null değer alabilen tam sayılar (Nullable Integers)
Programlama işine bir miktar aşina iseniz ya da etrafınızda deneyimli programcılar var ise değer tipleri (value types), referans tipleri (reference types) laflarını duymuş olmanız muhtemeldir. Kısaca hatırlayacak olursak bir değer tipi doğrudan değerin kendisini saklarken, referans tipi değerin saklandığı hafıza bölgesinin adresini saklıyorlardı. Gel gelelim oyle durumlar oldu ki degiskenin degersiz olmasi gerekiyordu. Mesela bir […]
Uzatım Metodları Extension Methods
C# dili 3.0 ile lambda fonsiyonları, LINQ, ve 3.5 versiyonuyla beraber anonim tipler gibi yenilikler