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 […]

Çıldırtan Javascript Hatası

Bugün enterasan bir gündü… Tüm ekip güne garip hatalarla başlamış, çıldırma kat sayısı erken saatlerde tepe yapmıştı. Her zaman olduğu gibi yazmaya başlamış, tıkır tıkır tıkırdıyorduk… Önümde basit bir kayıt formu işi vardı. Cumadan formu yazmış ve çalıştırmıştım. Akşam çıkmaya yakın sayfada kullandığım custom validator kontrolleri için yazdığım javascript fonksiyonlarını harici bir dosyaya taşımış, ilgili […]

Windows Servis

Windows Servis yazmanız gerekirse şu kaynaklar faydalı olacaktır. Bir ara inşallah bir yazı yazabilirim. Kaynaklar: Visual Studio Programmer`s Guide for the .NET Framework: Windows Service Applications http://msdn.microsoft.com/en-us/library/y817hyb6(VS.80).aspx Windows Services: New Base Classes in .NET Make Writing a Windows Service Easy http://msdn.microsoft.com/msdnmag/issues/01/12/NETServ/ Writing a Useful Windows Service in .NET in Five Minutes http://blogs.msdn.com/bclteam/archive/2005/03/15/396428.aspx How Do I…Write […]

Gömülü Web Kaynakları (Embedded Web Resources)

Oluşturduğumuz web kontrollerinin ihtiyaç duyduğu script, stil dosyası, imajlar gibi dosyaları assembly içine gömerek kontrol ile birlikte kolayca dağıtılmasını sağlayabiliriz. Bu durum dağıtım avantajının yanında bant genişliği ile ilgili bir dezavantajı beraberinde getirmektedir. Web kaynağı olarak assembly içine gömdüğümüz her dosya sunucuya yapılan her istekte tekrar tekrar sunucudan yüklenecek ve gereksiz yere bant genişliğini işgal […]

Kendi Sunucu Kontrollerimizi Oluşturmak

Bazı durumlarda kendine has HTML kodları üreten kontrollere ihtiyaç duyabiliriz. Bunun için mevcut kontrollerden veya mevcut kontrollerin miras yoluyla türetildiği webcontrol (System.Web.UI.WebControls.WebControl) sınıfından kendi kontrollerimiz türetme yoluna gidebiliriz. Bu işleme başlamak için öncelikle bir sınıf kütüphanesi projesine ihtiyacımız var. Bu projemizin adı "MyControl" olsun. Sonraki adımda kontrolümüzün adını taşımasını istediğimiz bir sınıf dosyasını projemize eklememiz […]

F#` a Giriş

F# (f şarp okunur), .NET Framework için tiplendirilmiş işlevsel programlama dilidir. F#, yüksek kaliteli, iyi desteklenen modern bir runtime sistemi üzerinde çalışmanın tüm avantajları ile tip güvenliği, başarım ve betik yazımının (scripting) çok arzu edilen bileşimini sağlar. Bu anlamda F#, betik/işlevsel/emreden/nesne yönelimli programlama dilidir. Bir çok pratik bilimsel, mühendislik ve web tabanlı programlama görevleri için […]

Çok Biçimlilik (Polymorphism)

Miras (Inheritance) kavramının iki önemli boyutu vardır. Bunlardan birincisi kodun tekrar kullanımıdır. Bir sınıftan türetilen bir sınıf oluşturduğunuzda taban sınıfın mantığının bir kısmını kullanabilirsiniz… Mirasın ikinci önemli boyutu ise çok biçimliliktir. Çok biçimlilik bir tipin birden fazla formunun olması demektir. Böylece tipin detaylarına bakmadan birden fazla biçiminin kullanılabilmesidir. Konuyu açmamız gerekirse şu klasik bir örnek verilebilir. […]

Erişim Değiştiricileri (Access Modifiers) anlamak

Erişim değiştiricilerin amacını anlamak kelime anlamlarından fazlasını anlamayı gerektirir… public: olarak işaretlenen sınıf üyesine diğer sınıfların üye metodları erişebilir. private: olarak işaretlenen sınıf üyesi sadece üyesi olduğu sınıf üye metodlarına görünür. protected: olarak işaretlenen sınıfı üyesinin görünürlüğü üyesi olduğu sınıftan türetilmiş sınıfların üye metodlarına genişletilir. Klavyeleriniz şen ola…

Volatile Anahtar Kelimesi

Volatile anahtar kelimesi ile bir alanın peş peşe çalışan iş parçacıkları (thread) tarafından değiştirilebileceği belirtilir. Volatile tanımlanan alanlar, sadece tek bir iş parçacığının eriştiğini kabul eden derleyici iyileştirmelerinden (compiler optimizations) hariç tutulurlar. Volatile kelimesi çoklu iş parçacıkları tarafından lock ifadesi kullanılmadan erişilecek alanlara erişimi serileştirmek, sıraya sokmak (serialize) için kullanılır…     1 using System;     2 using System.Collections.Generic;     3 using […]

Aramak istediğinizi üstte yazmaya başlayın ve aramak için enter tuşuna basın. İptal için ESC tuşuna basın.

Üste dön