turkaspx.net

 ASP.NET Yazılım Geliştiricileri

ASP.NET'te Gelecek WebForm'larında mı, Yoksa MVC'de mi?

clock Ağustos 27, 2008 17:20 by author UgurUmutluoglu

Son yıllarda web programlama dünyasında yaygınlaşan MVC uygulama modeli yavaş yavaş ASP.NET uygulamalarında da yerini almaya başladı. .NET Framework ile birlikte web sitelerine getirilen Windows formlarının çalışma modeli giderek benimsenmiş ve web literatürüne oturmuşken birden çıkıveren MVC Framework kafalarımızda şu soruları da oluşturdu: Hangi modeli kullanmak daha avantajlı, hangisi daha verimli çalışır? Belki de en önemli soru "Gelecek hangisinde? WebForm'larında mı, yoksa MVC Framework'te mi?" Hatta benim kafamda oluşan önemli sorulardan birisi de "Acaba Microsoft gelecekte WebForm'larını bırakıp ASP.NET'te MVC modelini mi kullanabilir mi?" idi birkaç gün öncesine kadar...

Geçtiğimiz günlerde Joe Stagner'ın blogunda okuduğum bir haber aklımdaki bu soru işaretini biraz da olsun kaldırdı. Zira Joe Stagner yazısında WebForm'larının gelecekte de ASP.NET uygulamalarındaki ana platform olacağını, Microsoft'un bu strateji üzerinden ilerleyeceğini, fakat MVC Framework'ün de geliştiremeye devam edeceğinden bahsediyordu. Yani; gönül rahatlığıyla WebForm'ları üzerinde kontrolleri sürükleyip bırakıp, üzerine çift tıklayıp, olay tabanlı programlama yapmaya devam edebiliriz. Peki MVC bu noktada programlama anlayışımızın neresinde yer almalı?

. [Yazının tamamını oku]

3 kişi tarafından 5.0 olarak değerlendirildi

  • Currently 5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5




GridView'da Silme ve Güncelleme İşlemi Onayı

clock Temmuz 26, 2008 20:51 by author UgurUmutluoglu

GridView kontrolünde silme ve güncelleme işlemleri yapılırken işlem tamamlanmadan önce kullanıcıdan onay alınmak istenilebilir. Özellikle silme işlemleri geri dönüşü olmayan sorunlara yol açabileceği için bu tip bir işlemi kazara bir butona basılarak yapılmasına izin vermemek son derece doğru olacaktır. GridView kontrolünde yapacağımız çok basit 2 değişiklik ile Update ve Delete işlemlerinin kullanıcıdan onay alarak gerçekleştirilmesini sağlayabiliriz.

İlk adımda Update ve Delete butonlarımızın bulunduğu CommandField'ı TemplateField'a dönüştürmek gerekecektir. Böylece artık Update ile Delete butonlarına erişebilir, gerekli istemci olayına istediğimiz JavaScript kodunu ekleyebiliriz. GridView'in smart tag ikonundan Edit Columns linkine tıklayıp açılan pencereden CommanField kolonunu seçmeli ve sağ kısımda yer alan Properties penceresinin altındaki Convert this field into a TemplateField linkine tıklamalıyız. Böylece artık Update, Delete, Cancel gibi butonların kontrol tanımlamalarına sayfanın HTML kodlarından erişebileceğiz.



. [Yazının tamamını oku]

5 kişi tarafından 3.4 olarak değerlendirildi

  • Currently 3,4/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5




VS 2008 ile SQL Server 2005 Kurulumunda Problem ve Çözümü

clock Temmuz 26, 2008 19:21 by author UgurUmutluoglu
Geçtiğimiz günlerde bilgisayarıma Windows XP'yi yeniden kurdum. Visual Studio 2008 ve SQL Server 2005'in kurulumları sorunsuz bitti, fakat Management Studio ve SQL Profiler gibi araçların kurulmadığını görünce bu sorunun neden kaynaklandığını ve nasıl çözebileceğimi internetten biraz araştırdım. Sorun ve çözümü şöyle:

Sorun: Visual Studio 2008'i SQL Server 2005'ten önce kurduğunuzda SQL Server sunucu olarak bilgisayarınıza kurulmuş olsa da, beraberinde gelen bileşenlerin kurulumu gerçekleşmiyor.

. [Yazının tamamını oku]

3 kişi tarafından 4.3 olarak değerlendirildi

  • Currently 4,333333/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5




Makaleler E-Kitabım

clock Mayıs 18, 2008 20:40 by author UgurUmutluoglu

Yapımına askerde başladığım ve ancak bitirebildiğim, içerisinde bugüne kadar çeşitli sitelerde yayınlanan makalelerimin bulunduğu e-kitabı bu linkten bilgisayarınıza yükleyebilirsiniz. Başta ASP.NET ve ASP.NET AJAX konularında yazdığım makalelerden ve yaklaşık 160 sayfadan oluşan bu doküman umarım sizler için faydalı olur.

. [Yazının tamamını oku]

12 kişi tarafından 4.5 olarak değerlendirildi

  • Currently 4,5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5




RenderControl Metodu ile Kontrolün HTML Çıktısını Üretmek

clock Mayıs 11, 2008 16:20 by author UgurUmutluoglu

ASP.NET uygulamalarında kullandığımız tüm kontroller HTML çıktılara dönüştürülmekte ve sayfanın HTML kodları içerisine yerleştirilmektedir. Basit olarak bir Label kontrolü sunucuda çalıştırıldığında <span> elementine dönüştürülürken, GridView gibi karmaşık bir kontrol ise tablo (<table> elementi) ve tablo içerisindeki elementlere dönüştürülür. Web uygulamalarında kullandığımız tüm sunucu kontrolleri WebControl sınıfından, WebControl ise Control sınıftan türetilmektedir. Control sınıfında yer alan RenderControl metodu (virtual metot olduğu için türetilen sınıflarda override edilir) sunucuda oluşturulan kontrolün HTML çıktısını string olarak elde edebilmemizi sağlar. Control sınıfında yer alan bu metot dolayısıyla tüm sunucu kontrollerinin de sahip olduğu bir üyedir ve programatik olarak oluşturulacak bir sunucu kontrolünün RenderControl metodu ile HTML çıktısına ulaşılabilir.

"Neden bir kontrolün HTML çıktısını alayım ki?" gibi bir soru akla gelebilir. Nerelerde karşımıza çıkabilir bir kontrolün HTML çıktısını programatik olarak elde etmek? Aklıma gelen bir kaç noktayı hemen şöyle listeleyim:

- Substution Caching (sayfanın tümünü önbellekten okuyup sadece belirli bir alanı dinamik oluşturmak) işlemlerinde sunucuda çalışacak metodun içerisinde bir kontrolü oluşturmak ve metodun geri dönüş değeri olarak kontrolü döndürmek,
- AJAX uygulamalarında WebMethod'lar ile asenkron güncellemeler yapılacağı zaman yine sunucudaki metodun içerisinde bir kontrol oluşturmak ve metottan kontrolün HTML çıktısını geri göndermek,
- Kullanıcılara toplu mail gönderimi yapılacağı zaman veritabanından çekilen kayıtların oluşturacağı grid türevi kontrolün kodlarını mailin HTML içeriğine eklemek,
- Raporlama sistemlerinde farklı kriterlere göre oluşturulan sonuçların HTML çıktısının veritabanına kaydedilmesi ve daha sonradan tekrar takip edilebilmesi...

Biraz daha düşünüldüğünde farklı senaryolar da akla gelebilir. Zaten bu tip varsayımlar ilk başta akla gelmeyen, fakat uygulamanın geliştirme safhalarında karşımıza çıkabilen durumlardır. Bu yazım belki karşınıza çıkan bu tip bir duruma ilaç olabilir:) Gelelim RenderControl metodunun nasıl kullanılacağına. Senaryoyu karmaşık hale getirmeden basit şekilde inceleyelim. Sayfamızda bir Label kontrolü olsun ve sunucuda oluşturacağımız GridView kontrolünün HTML çıktısını alıp Label'a yazdıralım. Aşağıda sayfamızın kodları yer almaktadır.

. [Yazının tamamını oku]

4 kişi tarafından 4.8 olarak değerlendirildi

  • Currently 4,75/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5




SQL Sorgusuna Tablo Adını Parametre Olarak Aktarmak

clock Nisan 13, 2008 20:41 by author UgurUmutluoglu

Web uygulamalarında en çok saldırı alabileceğimiz yerler veritabanı üzerinde çalıştırdığımız SQL sorgularımızdır. SQL Injection adı verilen teknik ile kötü niyetli kullanıcılar arka planda çalıştırdığımız SQL sorgularına ek SQL cümleleri ekleyebilmekte ve yeri geldiğinde "DROP DATABASE ..." gibi bir sorgu ile tüm veritabanını bile silebilmektedir! Gerek SQL Server ortamında hazırladığımız stored procedure'larda, gerekse uygulama tarafında kullandığımız ADO.NET nesnelerinde parametre (parameter) kullanarak bu tip tehditlerden veritabanımızı koruyabilmekteyiz. Parametreler SQL cümlelerinde sadece sütunlarda aranacak değerleri taşıyabilmekte, tablo veya sütun isimlerini ise taşıyamamaktadır. "Select * From Haberler Where HaberID=@id" gibi bir SQL cümlesinde HaberID sütununda aranacak değer parametre olarak aktarılabilir. Peki SQL cümlesine tablo adını parametre olarak aktarmak gibi bir durumda nasıl bir yolu izleyebiliriz? Yani "Select * From @TabloIsim" gibi bir SQL cümlesi yazabilsek ve parametre olarak Haberler bilgisini yolladığımızda sorgumuz Haberler tablosundaki, Duyurular bilgisini yolladığımızda da Duyurular tablosundaki tüm verileri getirse...

. [Yazının tamamını oku]

10 kişi tarafından 4.8 olarak değerlendirildi

  • Currently 4,8/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5




Accordion Kontrolünde Veritabanı ile Çalışmak

clock Nisan 8, 2008 19:24 by author UgurUmutluoglu
Bir önceki yazımda Accordion kontrolünün CSS ile kullanımından bahsetmiştim. Accordion kontrolünün içeriğini statik içerikle HTML kodları ile oluşturabileceğimiz gibi dinamik verilerle de oluşturabiliriz. Bir XML dosyasından, veritabanından veya koleksiyon gibi nesnelerden alınan veriler bu kontrole kolaylıkla yüklenebilir. Bu yazımda Accordion kontrolünü veritabanından alınan verilerle nasıl besleyebileceğimize bakıyoruz.

Accordion kontrolünde dinamik veri ile çalışmak Repeater ve DataList gibi kontrolleriyle benzerlik göstermektedir. Eğer SqlDataSource, XmlDataSource gibi veri kaynakları ile çalışırsak sayfada bağlanacak veri kaynağını belirtmek yeter olmayacak, HTML kısmından Eval veya Bind metotlarıyla veri yükleme işlemini de gerçekleştirmemiz gerekecektir. HTML koduna istediğimiz gibi müdahale edebildiğimiz için aslında olumlu bir durum olduğunu belirtmekte fayda var. Yine programatik yollarla DataTable, DataSet veya koleksiyon nesneleri ile Accordion kontrolünün çalışmasını sağlayabiliriz. Dilerseniz iki ayrı örnekte bu iki farklı yolu nasıl uygulayabileceğimizi görelim.

. [Yazının tamamını oku]

12 kişi tarafından 4.0 olarak değerlendirildi

  • Currently 4/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5




Accordion'un CSS ile Etkin Kullanımı

clock Nisan 5, 2008 14:28 by author UgurUmutluoglu

AJAX Control Toolkit ile gelen en kullanışlı kontrollerden birisi Accordion kontrolüdür. Web sayfalarının genellikle Sık Sorulan Sorular veya Yardım gibi bölümlerinde sıra sıra dizilmiş başlıklar bulunur ve kullanıcı hangi başlığa tıklarsa dinamik olarak o maddenin altındaki içerik görünür hale gelir. Diğer başlıkların içerikleri ise saklı durumda bulunur. Aslında uzun içeriklerin listeleneceği web sayfalarında hem kaplayacağı az alan açısından hem de görsel olarak sayfamızı daha kullanışlı hale getirecek bir kontrol Accordion. Başlık ve içerik olarak iki ana kısımdan oluşan AccordionPane'leri taşıyan Accordion kontrolünü CSS kullanarak zengin ve göze hoş gelen tasarımlar ortaya çıkarabiliriz. Accordion'un HeaderCssClass, HeaderSelectedCssClass ve ContentCssClass özelliklerinde önceden hazırladığımız CSS sınıfları (class) tanımlayarak bu işlemleri basit halde gerçekleştirebiliriz. Hazırladığım basit bir örnekle önce CSS tanımlamalarını, ardından da sayfamızdaki Accordion kontrolünü nasıl tanımlayacağımıza bakalım.

. [Yazının tamamını oku]

7 kişi tarafından 4.7 olarak değerlendirildi

  • Currently 4,714286/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5




Session ve Cache Nesneleri Üzerine

clock Mart 23, 2008 20:14 by author UgurUmutluoglu

Bir web uygulamasında Session ve Cache nesnesi arasında tercih yapacağını ve bu tercihini neye göre belirleyeceğini merak eden bir okuruma yazdığım cevap üzerine blogumda da bu iki nesne üzerine birşeyler yazmaya karar verdim. Zira geçtiğimiz günlerde yazgelistir.com'un forumunda da buna benzer bir başlık görmüştüm. Aslında karşılaştırma yapmaktan ziyade bazı programcı arkadaşların bu iki nesneyi yanlış tanıdıkları için bu yanlış anlaşılmayı biraz olsun düzeltmek niyetindeyim.

Session ve Cache kullanım amaçları bakımından birbirinden tamamen farklı nesnelerdir dersem yanlış olmaz. Zira Session tarayıcıya bağımlı olarak bir kullanıcı ile ilgili bilgiler saklayabileceğimiz bir nesne iken, Cache tüm kullanıcıların erişebileceği ve uygulamada performans kazancı sağlamak için kullanabileceğimiz bir nesnedir. Session nesnesindeki tek amaç belirli bir süreliğine bir değeri veya nesneyi saklamaktır ve performans adına herhangi bir getirisi olmayacaktır. Cache'deki en temel amaç ise performanstır. Dilerseniz şöyle madde madde bir bakalım Session ve Cache arasındaki farklılıklara:

. [Yazının tamamını oku]

8 kişi tarafından 4.6 olarak değerlendirildi

  • Currently 4,625/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5




Visual Studio 2008 - Ürün Karşılaştırması

clock Mart 7, 2008 21:44 by author UgurUmutluoglu

Visual Studio 2008'in piyasaya sürülen bütün ücretli ve ücretsiz sürümlerinin karşılaştırmasını bulabileceğiniz faydalı bir link. Öğrencilerim genelde "Hocam Express Edition'lar ile tam sürümler arasında ne gibi farklılıklar var" diye sorardı. Artık cevabı için bu linki kullanabilirim!

"Visual Studio 2008 Product Comparison" başlıklı incelemeye bu linkten ulaşabilirsiniz. 

. [Yazının tamamını oku]

4 kişi tarafından 4.8 olarak değerlendirildi

  • Currently 4,75/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5




ASP.NET Uygulamalarında Birden Fazla SiteMap Dosyası Kullanımı

clock Şubat 25, 2008 19:29 by author UgurUmutluoglu

ASP.NET uygulamalarında navigasyon kontrollerini SiteMapDataSource ile birlikte kullandığımızda sadece bir tane sitemap dosyası kullanılabilmekteyiz. Bu durumun sebebi uygulamalarındaki web.config dosyasının miras alarak kullandığı .NET Framework'ün kurulu olduğu dizindeki web.config dosyasında sadece bir tane SiteMap sağlayıcısı (provider) tanımlamasının yapılmasıdır. .NET Framework 2.0 kurulu bir makinada C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\CONFIG dizininde bulunan web.config dosyasındaki <siteMap> düğümüne bakacak olursanız tanımlanan tek bir provider'ın olduğunu ve bununda siteMapFile niteliğinde web.sitemap dosya isminin olduğunu görebilirsiniz. Aslında buradan yola çıkarak birden fazla sitemap dosyasını nasıl kullanabileceğimizi çözümleyebiliriz. Uygulamamıza ikinci bir sitemap dosyası eklemek ve navigasyon kontrolleri ile birlikte kullanmak istersek öncelikli olarak uygulamadaki web.config dosyasına yeni bir siteMap provider tanımlaması yapmamız gerekecektir. Aşağıda web.config dosyamızın <system.web> kısmına ekleyeceğimiz kodlar bulunmaktadır.

. [Yazının tamamını oku]

4 kişi tarafından 4.0 olarak değerlendirildi

  • Currently 4/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5




SiteMap Dosyasında Kendi Bilgilerimizi Saklamak

clock Şubat 17, 2008 20:44 by author UgurUmutluoglu

Site navigasyon işlemlerinde kullanmak için oluşturduğumuz sitemap dosyaları bildiğiniz gibi site içindeki sayfaların hiyerarşik yapılarını saklamaktadır. url, title ve description gibi sayfa hakkında detaylı bilgileri içerisinde saklayan siteMapNode düğümlerinde istersek kendimize ait nitelikler tanımlayarak özel bilgileri de saklayabiliriz. Nasıl mı?

Olayı basite indirgemek için site haritamızda sadece 4 kategori bulunsun: ASP.NET, ADO.NET, C# ve SQL Server. Normal durumlarda bu sayfalar hakkında url ve title, bazen de description bilgilerini saklarız. İstiyoruz ki bu 4 bölümün editörlerini de site haritası dosyasında saklayalım. Yapılacak tek işlem ilgili düğümler içerisine Editor="Veli" gibi tanımlamalar yapmak olacaktır. Bir sonraki adımda sayfa içerisinden bu bilgileri okumakta yine bu kadar kolay olacak! Aşağıdaki örnekte web.sitemap dosyası ve bir sayfadan bu bilgiyi nasıl elde edeceğimiz görülmektedir.

. [Yazının tamamını oku]

4 kişi tarafından 4.8 olarak değerlendirildi

  • Currently 4,75/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5




web.config Dosyasından URL ReWriting

clock Şubat 15, 2008 18:52 by author UgurUmutluoglu

URL ReWriting (sayfa adresini yeniden oluşturma) işlemi özellikle sayfalarımızda QueryString'leri kullanırken sıklıkla başvurmak istediğimiz bir işlemdir. Bu işlem karmaşık olan sayfa adresleri daha okunur ve sade hale getireceği gibi arama motorlarının sitemizdeki sayfaları daha verimli şekilde yakalamasını da sağlar. URL ReWriting'i uygulamanın birçok yolu bulunmaktadır. Kullanım bakımından en kolay yollardan biri de web.config dosyası ile bu işlemi gerçekleştirmektir. web.config dosyasında <system.web> düğümü içerisinde açacağımız <urlMappings> düğümü ile bu işlemin kolay şekilde yapılmasını sağlayabiliriz. Örneğin yazarların bilgilerini görüntüleyen bir sayfada içerik QueryString'den alınan bir veriye göre oluşsun. Sayfa arka planda aslında Yazar.aspx?isim=ugur şeklinde çalışıyor fakat biz adresin Ugur.aspx şeklinde görüntülenmesini istiyoruz. web.config dosyası içerisine ekleyeceğimiz aşağıdaki kod parçaları işimizi görecektir. mappedUrl niteliği sayfanın gerçek URL'ini, url niteliği ise görüntülenmesi istenilen URL'ini belirler. Yani Ugur.aspx gibi bir sayfaya istek geldiğinde aslında böyle bir sayfa olmayacaktır fakat adres kısmında bu URL görünecek ve arka planda Default.aspx?isim=ugur URL'i çalıştırılacaktır.

. [Yazının tamamını oku]

4 kişi tarafından 4.5 olarak değerlendirildi

  • Currently 4,5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5




ASP.NET 3.5 Extensions

clock Aralık 5, 2007 20:21 by author UgurUmutluoglu

.NET Framework 3.5 ve beraberinde ASP.NET 3.5 geçtiğimiz günlerde resmen duyurdu. C# tarafında LinQ gibi önemli yenilikler geliyor olsa da web uygulamalarında çok büyük yeniliklerin olmadığını da söyleyebiliriz. Ama 3.5 olayı burada bitti sanmayın zira ASP.NET ekibi çok yakın bir zamanda önemli bir paket ile bombayı patlatacak gibi: ASP.NET 3.5 Extensions. Aslında Microsoft bunun bir benzerini ASP.NET 2.0'ın ardından ASP.NET AJAX Extension'ı duyurarak ile yapmıştı. Şimdi de benzeri bir strateji ile geliyorlar. AJAX ancak 3.5 sürümünde mimariyle bütünleşti, belki bu son yenilikler de ASP.NET 4.0 (böyle bir sürüm olur mu bilinmez) ile bütünleşik gelecektir. Nacizane yorumlarımdan sonra gelelim ASP.NET 3.5 Extension'larına. Sevgili Scott Guthrie hocamızın .NET Web Product Roadmap başlıklı yazısından da gerekli bilgileri edinebilirsiniz.

Aslında ASP.NET 3.5 Extensions içerisinde daha önceden duyurulan ASP.NET Futures paketindeki kontroller ile ASP.NET MVC Framework'ün olduğunu söylesem pek te yanlış olmaz gibi. ASP.NET 3.5 ile ilgili geçen ay yazdığım yazıda ASP.NET Futures paketi ile gelen kontrollerin eklenmediğinden şikayetçi olmuştum hatırlayacağınız gibi. Sanırım beni ve çoğu web programcısının sesini duymuşlar :) Aşağıda bizleri bekleyen yenilikleri hakkında kısa bilgileri bulabilirsiniz.

. [Yazının tamamını oku]

8 kişi tarafından 4.0 olarak değerlendirildi

  • Currently 4/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5




ASP.NET MVC Framework Nedir?

clock Aralık 4, 2007 00:28 by author UgurUmutluoglu

Son zamanlarda yabancı kaynakları takip ediyorsanız eminim ki MVC harflerini ASP.NET'in hemen yanında sıklıkla görmüşsünüzdür. MVC yani Model View Controller. MVC mimarisi aslında daha önceden de duyulan bir tasarım deseniydi (design pattern) programlama dünyasında. Bu yaklaşımdaki temel mantık bir web projesini üç temel parçaya bölmek ve yapılacak işleri bu parçalar üzerinden yürütmektir. Hazırladığımız projelerde sıklıkla kullandığımız uygulamayı iş katmanı ile veri katmanı olarak ayrı parçalara bölmeyi buradaki yaklaşım ile benzeştirebiliriz. Aslında temel amaç uygulamayı  işe yarar belirli amaçları olan parçalara bölmek ve bir parçanın değişiminden diğer parçaların etkilenmesini engellemektir.

MVC uygulamanın Model, View ve Controller olarak üçe ayrılmasını benimseyen bir tasarım desenidir.

. [Yazının tamamını oku]

10 kişi tarafından 4.6 olarak değerlendirildi

  • Currently 4,599999/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5




Visual Studio 2008 ve ASP.NET 3.5 Sunumları

clock Kasım 21, 2007 14:11 by author UgurUmutluoglu

Dün Fatih Üniversitesi'ndeki seminer ve bugün düzenlediğimiz webinerleri başarılı bir şekilde tamamladık. Katılımların yoğun şekilde gerçekleştiği bu etkinliklerde ilk kez Visual Studio 2008 ve ASP.NET 3.5 ile birlikte gelen yenilikleri katılımcılarla paylaştık. Önümüzdeki günlerde diğer üniversitelerde de bu tip etkinlikleri düzenlemeye devam edeceğiz.

Aşağıda seminerlerde kullandığımız sunum dosyalarını bulabilirsiniz.

Visual Studio 2008
ASP.NET 3.5

. [Yazının tamamını oku]

7 kişi tarafından 4.1 olarak değerlendirildi

  • Currently 4,142857/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5




Visual Studio 2008 ve ASP.NET 3.5 Webineri

clock Kasım 19, 2007 15:44 by author UgurUmutluoglu

logo_vs2008_aspnet35 21 Kasım 2007 Çarşamba günü saat 10.00 - 12.00 arasında internetten canlı olarak yayınlanacak webinere (web seminerine) davetlisiniz. Türkiye'de yapılacak bu ilk Visual Studio 2008 ve ASP.NET 3.5 webineri ile bu ayın sonunda çıkacak yeni teknolojileri görme fırsatı bulabilirsiniz.

Webiner ile ilgili bilgiler aşağıdadır:

. [Yazının tamamını oku]

9 kişi tarafından 3.7 olarak değerlendirildi

  • Currently 3,666667/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5




Fatih Üniversitesi Seminerleri

clock Kasım 19, 2007 00:39 by author UgurUmutluoglu

20 Kasım 2007 Salı günü sitemiz editörlerinden Burak Selim Şenyurt, Burak Batur ve Uğur Umutluoğlu gerçekleştireceğimiz sunumlarla Fatih Üniversitesi öğrencileriyle birlikte olacağız. Bu etkinliğin belki de en önemli yönü Türkiye'de Visual Studio 2008 ve ASP.NET 3.5 konularında yapılacak ilk seminer olması!

Saat 12.00-15.30 arasında gerçekleşecek seminerlerin programları aşağıdadır.

. [Yazının tamamını oku]

3 kişi tarafından 4.3 olarak değerlendirildi

  • Currently 4,333333/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5




Static Metotlarla AJAX Sayfalarını Daha da Hızlandırın!

clock Kasım 12, 2007 12:11 by author UgurUmutluoglu
ASP.NET AJAX istemci ve sunucu merkezli çalıştığı için mimarisi gereği sayfada asenkron postback işlemi başlatsak dahi sunucu tarafında sayfamızın yaşam döngüsü tam olarak çalışmakta ve sayfa baştan itibaren üretilmekte, fakat istemciye sadece UpdatePanel'in içeriği gönderilmektedir. Bu işleyiş aslında kötü bir durum gibi gözükse de ASP.NET sayfa mimarisi açısında gerekli bir işlemdir ki; çoğu noktada faydalarını da görebiliriz. Olayın diğer tarafına bakacak olursak sayfanın sunucu tarafında baştan üretilmesi biraz da olsa yavaşlığa sebep olacaktır. Eğer sayfanızda bir kontrolün içeriğini asenkron olarak güncellemek ve bu işlemi hızlı bir şekilde yapmak istiyorsanız sunucu tarafında çalışacak static metotlar oluşturarak istemci tarafında hazırlayacağınız basit JavaScript fonksiyonlarıyla da asenkron güncelleme işlemini gerçekleştirebilirsiniz.

. [Yazının tamamını oku]

12 kişi tarafından 4.5 olarak değerlendirildi

  • Currently 4,5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5




"Operation must use an updateable query" Hatası ve Çözümü

clock Kasım 7, 2007 10:52 by author UgurUmutluoglu

Bir ASP.NET uygulamasında kullandığım Access veritabanındaki işlemlerde "Operation must use an updateable query" hatası ile karşılaştım. Local makinamda herhangi bir problem oluşmazken, sunucuda yapmak istediğim INSERT, UPDATE ve DELETE işlemlerinde aldığım bu hatanın sebebi sorgu cümleleri ile ilgili değil de, dosya okuma-yazma izinleri ile ilgili olduğunu öğrendim. Bu tip bir hata ile karşılaşırsanız mdb dosyasının bulunduğu dizinde NETWORK SERVICE isimli kullanıcıya yazma hakkı vermeniz gerekiyor.

Not: Bu kullanıcı Windows Server 2003 ve Windows Vista'da NETWORK SERVICE iken, Windows XP'de ASP.NET kullanıcısı olmalıdır.

. [Yazının tamamını oku]

6 kişi tarafından 4.3 olarak değerlendirildi

  • Currently 4,333333/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5




ASP.NET 3.5 ile Gelen Yenilikler

clock Kasım 6, 2007 02:24 by author UgurUmutluoglu

Önümüzdeki günlerde resmen duyrulacak olan Visual Studio 2008 ve .NET Framework 3.5 ile birlikte ASP.NET'te 3.5 sürümüne ulaşmış olacak. Öncelikli olarak şunu belirtmeliyim ki bu sürümde ASP.NET 1.1'den ASP.NET 2.0'a geçişteki gibi köklü yenilikler olmayacak. Fakat gelen yenilikler içerisinde AJAX ve LINQ'nun olduğunu belirtecek olursak aslında bizi oldukça önemli yeniliklerin de beklediğini söyleyebilirim. Dikkatimi çeken noktalardan biri ASP.NET Futures paketi ile gelen bazı kontrollerden şu an için Microsoft'un sitesinde bahsedilmemesiydi. Önceki postumda yer alan .NET Framework 3.5 Namespace ve Class'ları listesinde de yer almayan bu kontroller sanırım başka bir bahara bırakıldı. ASP.NET 3.5 ile gelecek yenilikleri aşağıdaki başlıklarla sizlere aktarmaya çalışacağım.

. [Yazının tamamını oku]

18 kişi tarafından 4.1 olarak değerlendirildi

  • Currently 4,111112/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5




.NET Framework 3.5 ile Gelen Namespace ve Class'lar

clock Kasım 6, 2007 02:12 by author UgurUmutluoglu

.NET Framework 3.5 sürümünün resmen duyrulmasına sayılı günler kaldı. Çoğu programcı bu sürüm ile birlikte gelecek yenilikleri büyük bir heyecanla bekliyor. Heyecanımızı biraz yatıştırmak adına, aşağıdaki linkte bulunan liste ile masaüstümüzü, evimizin veya ofisimizin duvarlarını süsleyebiliriz.

Listeyi buraya tıklayarak indirebilirsiniz.

. [Yazının tamamını oku]

6 kişi tarafından 4.7 olarak değerlendirildi

  • Currently 4,666667/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5




ASP.NET 2.0 Semineri (Sakarya Üniversitesi)

clock Ekim 31, 2007 11:34 by author UgurUmutluoglu
1 Kasım 2007 Perşembe günü Sakarya Üniversitesi'nde gerçekleşecek olan ASP.NET 2.0 seminerine davetlisiniz. Seminer ile ilgili bilgileri aşağıda bulabilirsiniz.



Konu: ASP.NET 2.0 ile Web Uygulamaları Geliştirmek
Tarih: 1 Kasım 2007 Perşembe
Saat: 14:00 - 17:00

. [Yazının tamamını oku]

2 kişi tarafından 4.0 olarak değerlendirildi

  • Currently 4/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5




GridView'e Programatik Veri Bağlamada Sayfalama ve Sıralama İşlemleri

clock Ekim 30, 2007 16:33 by author UgurUmutluoglu

GridView'e programatik olarak veri bağladığında eğer sayfalama(paging) ve sıralama(sorting) işlemi yapılırsa gridin bu işlemlerini ne şekilde yapacağını da yine programatik olarak belirlemek gerekecektir. Sayfalama işlemi için PageIndexChanging, sıralama işlemi için ise Sorting evetleri kullanılmaktadır. Sayfalama işlemi için yazılacak event metodunda yapılacak işlemler gridin yeni sayfa indeksini belirlemek iken, sıralama işleminde durumlar biraz daha karışıktır. Sorting event'i tetiklendiğinde grid kontrolü her defasında sıralama yönünü Ascending olarak getireceği için kullanıcının tersten sıralama (Descending) işlemi yapması durumunda bizim ekstra kodlarla bu durumu ele almamız gerekecektir. Burada sıralama yönünü geçici olarak bir yerde depolamak gerekecektir ki; en uygun yerin ViewState olduğunu söyleyebilirim. Aşağıdaki kodlarda gridview kontrolünün sayfalama ve sıralama işlemlerini nasıl ele alabileceğimiz görüntülenmektedir. Yorum satırları size yardımcı olacaktır.

void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
   
// e parametresinden gelen index numarasını gridview'ın PageIndex'ine atayıp 
   
// verileri tekrar bağlamak sayfalama işlemi için yeterli olacaktır
   
GridView1.PageIndex = e.NewPageIndex;
   
GridView1.DataBind();
}

. [Yazının tamamını oku]

4 kişi tarafından 5.0 olarak değerlendirildi

  • Currently 5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5




GridView'deki Toplam Kayıt Sayısı

clock Ekim 30, 2007 16:15 by author UgurUmutluoglu

GridView'e SqlDataSource gibi bir kontrol ile veri bağlıyorsanız görüntülenen kayıtların toplam sayısını elde etmek için SqlDataSource kontrolünün Selected event'inden faydalanabilirsiniz. Event'in bağlanacağı metoda aktarılan SqlDataSourceStatusEventArgs tipindeki e parametresinin AffectedRows özelliği size bağlanan toplam kayıt sayısını getirecektir. Aşağıdaki kod parçasında bu işlemin nasıl yapıldığını görebilirsiniz.

protected void Page_Load(object sender, EventArgs e)
{
    SqlDataSource1.Selected += new SqlDataSourceStatusEventHandler(SqlDataSource1_Selected);
}

. [Yazının tamamını oku]

4 kişi tarafından 4.5 olarak değerlendirildi

  • Currently 4,5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5




Substitution ile Önbellekleme İşlemleri

clock Ekim 26, 2007 17:00 by author UgurUmutluoglu

ASP.NET 2.0 ile birlikte gelen yeni kontrollerden biri olan Substitution kontrolünü önbellekleme işlemlerinde kullanabiliyoruz. Tamamı önbellekten getirilen bir sayfanın içerisinde sadece belirli bir alanın dinamik şekilde oluşturulması için bu kontrolü kullanabiliriz. Aşağıdaki görsel derste Substitution kontrolünün nasıl kullanabileceğini görebilirsiniz.

. [Yazının tamamını oku]

2 kişi tarafından 5.0 olarak değerlendirildi

  • Currently 5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5




AJAX Extension Kurulu Olmayan Sunucuda ASP.NET AJAX Projesi Çalıştırmak

clock Ekim 26, 2007 16:39 by author UgurUmutluoglu

ASP.NET AJAX ile ilgili en sık karşılaşılan sorunlardan birisi de local bilgisayarımızda çalıştırdığımız bir projenin sunucuda çalışmaması durumudur. Eğer projenizi sakladığınız sunucuda ASP.NET AJAX Extension kurulu değilse böyle bir problemle karşılaşmanız gayet normal olacaktır. Bu tip bir sunucuda projenizi yayınlamak isterseniz aşağıdaki adımları izleyebilirsiniz:

1- Öncelikli olarak ASP.NET AJAX projenize Bin dizini açın ve buraya referans olarak System.Web.Extensions.dll ve System.Web.Extensions.Design.dll dosyalarını ekleyin. Bu dll kütüphanelerini C:\Program Files\Microsoft ASP.NET\ASP.NET 2.0 AJAX Extensions\v1.0.61025 dizininden elde edebilirsiniz.

. [Yazının tamamını oku]

4 kişi tarafından 4.8 olarak değerlendirildi

  • Currently 4,75/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5




DataBind İşlemlerinde Link Baglama İşlemleri

clock Ekim 24, 2007 15:30 by author UgurUmutluoglu

Data kontrollerinde ItemTemplate'ler ile çalışırken kendi oluşturduğumuz linklerde çoğu zaman QueryString kullanmamız gerekebilir. Linkleme yaparken Bind metodunu kullanacak olursak sorunlarla karşılaşabiliyoruz. Şöyleki NavigateUrl='UrunDetay.aspx?ID=<%# Bind("urun_id") %>' şeklindeki bir kullanımda urun_id bilgisini düzgün...

. [Yazının tamamını oku]

2 kişi tarafından 5.0 olarak değerlendirildi

  • Currently 5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5




app_offline.htm ile Sitenizi Offline Yapın!

clock Ekim 24, 2007 15:01 by author UgurUmutluoglu

Yayında olan bir ASP.NET 2.0 projesini offline duruma getirmek istiyorsanız projenizin ana dizinine app_offline.htm isimli bir dosya eklemeniz yeterli olacaktır. Böylece sitenizi ziyaret eden kullanıcılar artık sitenizdeki hiçbir sayfayı görüntüleyemez ve yapılan her istekte karşılarına app_offline.htm sayfası getirilir.

Not: Bu dosyanın en az 255 byte olması gerekmektedir.

. [Yazının tamamını oku]

4 kişi tarafından 4.5 olarak değerlendirildi

  • Currently 4,5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5




Merhaba turkaspx.net

clock Ekim 23, 2007 18:12 by author UgurUmutluoglu
turkaspx.net olarak tüm yazılım geliştiricilere merhabalar! turkaspx.net olarak amacımız .NET teknolojileriyle ilgili bilgi birikimlerimizi ve tecrübelerimizi sizlerle paylaşmak olacaktır. Bugüne kadar Türkçe içerikli topluluk sitelerinde yazdığımız makalele... [Yazının tamamını oku]

2 kişi tarafından 4.5 olarak değerlendirildi

  • Currently 4,5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5