hayal et, tasarla, hayata geçir



ASP.NET

Temiz ASPX

Web projelerimizde sadece kod okunabilirliği değil, HTML okunabilirliği de bizim için önemlidir. ASPX sayfalarımızı daha düzenli tutabilmek için yapabileceğimiz bir kaç küçük işlem projelerimizde bize çok faydalı olacaktır. Döküman formatını sık sık düzenleyin. Bu işlemi otomatik yapmak için ‘Format the whole document’ düğmesini veya kısa yol olarak ‘Ctrl + K + D’ kombinasyonunu kullanın. Böylelikle [...]


Eval Metodunun Kullanımı

Bu yazıda template bazlı çalışan kontrollerde (Repeater, ListView vs.) Eval metodunun kullanım çeşitlerini göreceğiz. Eval metodu; bir koleksiyon üzerindeki mevcut kayıttan istediğimiz bir veriye ulaşmamızı sağlar. Data source üzerindeki bir property (class veya struct olduğunda) veya bir kolonun (datatable olduğunda) adını bu metoda vermemiz yeterlidir. En basit anlamda kullanımı şu şekildedir; <ItemTemplate> </ItemTemplate> Bazı durumlarda [...]


Request Limiti (maxRequestLength)

HTTP taleplerinin ASP.NET ve IIS tarafından atanmış belirli limitleri bulunmaktadır. Bu limit değerleri değiştirilmediği vakit sunucuya yüksek boyutta dosya yüklenmeye çalışıldığında uygulama hata verecektir. Değiştirmemiz gereken ilk attribute httpRuntime nodeu içerisindeki maxRequestLength değeridir. Bu değeri atamadığımız vakit default olarak 4096 byte (4 MB) kullanılmaktadır. Bu yazıyı yazmamdaki asıl sebep olan ve IIS7 ile birlikte gelen [...]


ASP.NET Timeout Süreleri

Web uygulamalarında bazı durumlarda sunucuya yapılan request süreleri çok fazla olabilir veya kullanıcıların sitede uzun süre beklemeleri gerekebilir. Bazen arka tarafta uzun bir işlem süregelmesinden bazen de büyük dosyaların upload yapılmasından ötürü sayfalarda timeout hatası ile karşılaşabiliriz. Bu gibi durumlarda konfigürasyon dosyasında hangi değişiklikleri yapabileceğimizi aşağıda ayrı ayrı inceleyelim; Execution Timeout ASP.NET taleplerinin maksimum süresidir. [...]


UserControl, UpdatePanel ve RegisterPostBack Sorunu

ASP.NET AJAX ile gelen sorunlardan biri de UpdatePanel içerisinde bazı durumlarda ajax postback yerine full postback yapılması zorunluluğudur. Dosya yükleme veya Response.Write işlemlerinde UpdatePanel bize fazla destek olmamaktadır. Bu gibi durumlarda RegisterPostBack metodu yardımımıza koşar ve normal şartlar altında sunucuya asenkron postback yapması gereken kontrolün UpdatePanel içerisinde olsa bile full postback yapmasını sağlar. ScriptManager.GetCurrent(Page).RegisterPostBackControl(Button1); İlk [...]


Durum Yönetimi ve Farkları

Bu yazıda ASP.NET durum yönetimi (State Management) altında bulunan Querystring, ViewState, Session, Cache, Application, Cookie ve Items nesnelerinin farklarına göz atacağız. Querystring – Querystring sayfalar arasında veri göndermemizi sağlar. – İçerisinde bulunan veriyi son kullanıcı birebir gördüğü için gizli tutulması gereken verilerin taşınmasında kesinlikle kullanılmamalıdır. – Session nesnesinin kullanılmadığı zamanlarda kullanıcıya görünmesini engellemek için Server.Transfer [...]


Querystring Hash Yöntemi

Querystring sayfalar arasında veri göndermemizi sağlayan durum yönetimi kavramlarından birisidir. Her ne kadar kullanımı basit ve kullanışlı olsa da gönderilen verinin son kullanıcıya görünmesi ve kullanıcıların kolaylıkla bu veri üzerinde değişiklik yapabilmesi querystring için bir dezavantajdır. Tabi ki querystring ile gönderilen bir veri önemliyse ve kullanıcı tarafından görünmemesi gerekiyorsa mutlaka session gibi başka yöntemler tercih [...]


JavaScript ile Code-Behind Üzerinden Metod Çağrısı

ASP.NET AJAX ile gelen güzel özelliklerden biri de ScriptManager ile kod tarafından method çağırmaktır. Genel olarak web servis üzerinden yapılabilen bu çağrılar benzer bir şekilde aspx kodlarımız üzerinden de yapılabilmektedir. Bu işlemin temel amacı aslında tek bir web serviste toplanan metodların ilgili sayfalara dağıtılabilmesidir. ASP.NET AJAX kütüphanesinde PageMethods olarak isimlendirilen bu yöntemin nasıl uygulandığını beraber [...]


UserControl’den Diğer Bir UserControl’e Erişmek

Bazı durumlarda sayfa üzerindeki bir UserControl’den diğer bir UserControl’e erişmemiz gerekebilir. Bu ihtiyacımızı karşılamak için UserControl’ün başına “Reference” olarak ulaşmak istediğimiz diğer UserControl’ü göstermemiz bizim için yeterli olmaktadır; Örnek vermek gerekirse aşağıdaki gibi Control’e sahip olduğumuzu düşünelim; public partial class WebUserControl2 : System.Web.UI.UserControl { protected void Page_Load(object sender, EventArgs e) { } public void BirSeyYap() [...]


ListView

ASP.NET ile verilerimizi listeleyebileceğimiz kontroller Repeater ve DataList kontrolleridir. Bu kontrollerin esnekliği fazla olsa da sadece liste yapıları için uygundurlar. Tablo yapısı halinde sunmamız için ise GridView ve DataGrid kontrolleri bulunmaktadır. Bu kontroller gelişmiş bir data yönetimi imkanı sunsa da sabit bir tablo yapısında çıktı üretmeleri, tasarıma uymayı zorlaştırmaktadır. İşte bu 4 kontrolün eksik yanlarını [...]


Querystring

Bilindiği üzere ASP.NET’te verileri saklama veya sayfalar arası taşıma işlemleri, Durum Yönetimi (State Management) adı altında sunulan seçenekler kullanılarak yapılır. Bu opsiyonlara bakarsak: Durum Yönetimine Genel Bakış -View State -Control State -Hidden Form Fields -Cookies -Query String -Application State -Session State Şimdi QueryString özelliğini beraber inceleyelim. QueryString soyut olarak nedir? Sayfalar arası veri taşıma yollarından [...]


Navigasyon İşlemleri

ASP.NET'te sayfalar arasındaki yönlendirmeler web sitelerimizin olmazsa olmazlarıdır. Her ne kadar bu navigasyon işlemlerini yapmak çok zor bir işlem olmasa da bazı incelikleri vardır. ASP.NET, yönlendirme işlemleri için kullanımımıza 2 adet Link nesnesi ve kontrolü bizim sağlamamız için de 3 adet metod sunmuştur. Bunlar: Kontroller HTML Anchor HyperLink LinkButton Metodlar Response.Redirect() Server.Transfer() Server.Execute() Makalemizde bu özelliklerin [...]


ViewState

Güzide Windows uygulamalarından, karanlık ASP.Net sayfalarına geçildiğinde yadırganılan ilk konulardan biri heralde veri aktarımı ve bu verilerin saklanmasıdır. Sonuç olarak sayfa her post back olduğunda veriler kaybolmakta ve buda programcılara bunalımlardan bunalım beğendirmektedir. İşte bu ihtiyaç, Durum Yönetimi (State Management) olgusunun ortaya çıkmasının sebebi olmuştur. Sayfa veya tüm uygulama bazında verileri saklamak için ASP.NET çatısı [...]




SON YAZILARIM

genel
Microsoft Türkiye Açık Akademi

Microsoft tarafından Türkiye'deki ilk ücretsiz online yazılım okulu Açık Akademi açıldı....

genel
Windows Azure Blob Arayüzü

Bir önceki yazımızda Blob servisine kısa bir giriş yapmıştık. Yazıyı okumak isterseniz

genel
Windows Azure Blob Servisi

Microsoft'un bulut mimarisi Windows Azure platformu üzerinde veri altyapısı alışıla gelmiş yöntemlerden...