turkaspx.net

 ASP.NET Yazılım Geliştiricileri

Performance Point Server Nedir - 2

clock Haziran 30, 2008 10:10 by author EmrahUslu
Bu yazıda Microsoft'un yeni sayılabilecek kurumsal performans yönetim uygulaması Performance Point Server 2007'nin 3 ana modülünün teorik detayları bize gelecekteki teknik detaylar için rehber oluyor.

. [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




Performance Point Server Nedir - 1

clock Haziran 25, 2008 09:52 by author EmrahUslu
Bu yazımızda Microsoft'un kurumsal perfomans yönetim aracı Performance Point Server 2007 konusuna giriş yapıyoruz. İş zekası platformuna yeni bir soluk getiren bu araç ile heyecan verici dashboard'lar tasarlamaya giden yolun haritasını çıkaracağız.

. [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




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]

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

  • Currently 4,25/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]

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

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




SiteMap Dosyasında Yer Alan Hiyerarşiyi Rollere Göre Görüntülemek

clock Nisan 7, 2008 17:24 by author BurakBatur

ASP.NET 2.0 ile birlikte SiteMap dosyalarında sitelerin hiyerarşisi tutulabilmekte ve SiteMap dosyalarında yer alan verilere göre dinamik olarak menüler oluşturulabilmektedir. Yazılım geliştiricilere çok büyük kolaylık sağlayan SiteMap dosyasında hangi verinin hangi rol gruplarında görüntülenebileceği de SiteMap dosyasında belirlenebilmektedir.

Site içerisinde Admin ve Katılımcı isimli iki rol grubu düşünüldüğünde sadece bu rol gruplarına üye kişilere görüntülenecek olan sayfalar SiteMap dosyası içerisinde aşağıdaki gibi tanımlanabilir.

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

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

  • Currently 5/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]

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

  • Currently 4,666667/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]

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

  • Currently 4,571429/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]

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

  • Currently 5/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




CLR SQL Fonksiyonunda Web Servis Kullanımı : Mail Geçerliliği (Mail Validation)

clock Aralık 9, 2007 00:38 by author EmrahUslu
.NET Framework 2.0 versiyonunun yayınlanmasının ardından CLR ile SQL entegrasyonu hayatımıza girdi. Bu entegrasyon sayesinde herhangi bir .NET tabanlı programlama dili ile sql nesneleri yazılabilmektedir. Örneğin bir tablodan her veri silindiğinde System.IO isim alanı altında yer alan tiplerden faydalanarak arşivleme yapan bir trigger yazılabilir. Ya da aldığı parametrenin içinde geçen sesli harfleri sayan bir aggregate fonction, for döngüsü ve diziler ile kolayca yazılabilir. Bu örnekler tabi ki çoğaltılabilir. Sql nesnelerini .Net tarafında geliştirmek için gösterilebilecek en önemli sebep, .Net temel sınıf kütüphanesinden faydalanabilmektir. Bu sayede standart bir stored procedure ile yapılması zor ya da imkansız olan bir çok vaka sıradan hale gelmektedir.

Bu yazıda, kullanıcı tanımlı bir fonksiyonun nasıl yazılacağını incelenmekle kalmayıp, fonksiyonun içerisinde koşan iş mantığında bir web servisten faydalanacağız. Son olarak yazdığımız fonksiyonu, sql server içerisinde oluşturulan bir tabloya koyacağımız check constraint içerisinde kullanacağız.

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

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

  • Currently 4/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




ProviderFactory Sınıfı Kullanımı

clock Kasım 25, 2007 19:43 by author BurakBatur

Bir yazılım geliştirilirken geliştirilme aşamasında hangi Veri Tabanı Yönetim Sisteminin (VTYS) kullanılacağı bilinmiyorsa bu durum sorun oluşturan bir durumdur. Büyük projelerde genellikle ilk olarak kullanılacak olan Veri Tabanı Yönetim Sistemi belirlenir ve ardından da DataBase tasarımına geçilir. Peki kullanılacak olan VTYS'mine karar veme süresi uzadı ise ne olacak? Karşınızda 2 seçenek var. Ya bekleyip projeyi geçici bir süre bekletip bu kararın daha hızlı alınmasını sağlamak ya da ADO.NET'te bulunan Provider Factory'leri kullanmak. Provider Factory'ler ile birlikte ilk olarak veriye erişim katmanını sanki tablolar varmış gibi hazırlayıp daha sonra sağlayıcı seçebiliyorsunuz ve seçilen sağlayıcıya göre kodlarınız çalıştırılıyor.

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

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

  • Currently 3,666667/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




C# 3.0 ile Tanışalım - 4 : Genişletme Metotları (Extension Methods)

clock Kasım 14, 2007 18:38 by author EmrahUslu
Genişletme metotları (extension methods), var olan bir tipi doğrudan güncellemeden, o tipe yeni metotlar eklemeyi sağlayan bir özellik olarak özetlenebilir. Projeye eklenmiş harici bir assembly'ye, projede kod olarak yer alan bir tipe ya da .NET temel sınıf kütüphanesinde yer alan bir tipe sonradan metot eklenebilir. Çalışılan tip, ihtiyaç duyulan bir fonksiyonelliği sağlamıyorsa, bu yöntemin kullanılması önerilebilir. Genişletme metotları aynı zamanda bir tipi, belli bir üye grubunu desteklemeye zorlama ihtiyacı varsa da faydalı olabilir (Polimorfik yapı benzeri); ancak orjinal tip tanımlaması değiştirilemez. Kısacası genişletme metotları, önceden derlenmiş tiplere sanki kendi metoduymuş gibi kullanılmak üzere yeni fonksiyonellik sunmalarını sağlamaktadır.

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

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

  • Currently 4,5/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]

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

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




C# 3.0 ile Tanışalım - 3 : Nesne ve Koleksiyonlara Ilk Değer Atayıcı (Object and Collection Initializer)

clock Kasım 8, 2007 15:39 by author EmrahUslu
Uygulamalarda sınıf (class) ve yapı (struct) tasarımı yapılırken genellikle yapıcı metotlardan (constructor) faydalanılır.. Yapıcı metot kullanımının amacı çoğu zaman, sınıf içerisindeki alan (field) ve özelliklere (property) ilk değerlerini vermek olur. Bu vakalar göz önüne alındığında, C# 3.0 ile birlikte artık sınıflara yapıcı metot yazılmak zorunda değildir. Nesne ilk değer atayıcı (object initializer), herhangi bir yapıcı metot çağırmadan, nesne new anahtar kelimesi ile örneklenirken, erişilebilen bütün alan ve özelliklere değer atanmasını mümkün kılmaktadır. Ayrıca IEnumerable arayüzünü uygulamış koleksiyonlara, koleksiyon ilk değer atayıcı (collection initializer) ile tıpkı dizilerdeki gibi ilk değer ataması yapılabilmektedir.

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

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

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




Full-Text Search ile Arama İşlemleri

clock Kasım 7, 2007 19:13 by author BurakBatur

SqlServer Full Text Search servisi ile SQL Server'da karakter bazlı alanlarda arama yapılarak daha verimli arama sonuçları elde edilebilir, ancak arama yapılacak olan alanlar üzerinde ilk olarak Full-Text Index'ler tanımlanmalıdır. Full Text Index'ler belirtilen alanın verisini fiziksel olarak belirtilen alana indeksleyerek bu alan içerisinde arama yapılmasını kolaylaştırır. Full Text Index tanımlamak için indeksin tanımlanacak olduğu tablo üzerine sağ tıklayarak Full Text Index seçeneği üzerinden Define Full Text Index seçeneği seçilmelidir. Full-Text Index tanımlarken bu Full-Text Indexler'in gruplanacağı yeni bir Full-Text Catalog tanımlanacağı gibi var olan  bir kataloga da eklenmesi sağlanabilir. Full-Text Index tanımlanırken dikkat edilmesi gereken bir nokta da indeksin tanımlanacak olduğu tabloda en azından bir tane UniqueKey tanımlanmış olması gerekliliğidir. Tabi bu ayarı yapabilmek için DataBase'de Full Text Indexing özelliğinin aktif olarak ayarlanmış olması gerekmektedir. Eğer üzerinde arama yapılmak istenilen DataBase'in Full-Text Indexing özelliği aktif değilse DataBase'in özelliklerinden Files bölümünde bulunan CheckBox seçili hale getirilerek aktif yapılabilir. Full-Text Index'ler char, varchar, text, ntext, nchar ve nvarchar veri tipinde tanımlanmış olan alanlar üzerinde tanımlanabilir ve Full Text Search servisi bu alanlarla kullanılabilir.

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

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

  • Currently 4,222222/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




WCF - Reliable Sessions(Güvenilir Oturumlar) Nedir?

clock Kasım 6, 2007 15:52 by author BurakSenyurt

WCF (Windows Communication Foundation) ile geliştirilen servis yönelimli mimari(Service Oriented Architecture) uygulamalarında güvenilir oturumlar (Reliable Session) açılması için pek çok sebep vardır. 

Bunlardan biriside Replay Attack adı verilen saldırılardır. Bu saldırılarda istemci ve servis arasındaki mesajların, kötü niyetli kişiler tarafından yaklanması, değiştirilmesi, her hangibir zamanda n sayıda tekrar ettirirlerek orjinal servis konumuna yada başka bir lokasyona gönderilmesi söz konusudur. Bu tip saldırıların önüne geçmek için WCF mimarisi içerisinde güvenilir oturumların açılması gerekmektedir.

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

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

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




C# 3.0 ile Tanışalım - 2 : Bilinçsizce Türlendirilmiş Lokal Değişken (Implicitly Typed Local Variable) : var

clock Kasım 6, 2007 08:15 by author EmrahUslu

Bu yazıya başlamadan önce, eğer okumadıysanız aşağıda yer alan ve C# 3.0'a giriş niteliği taşıyan yazıyı okumanızı tavsiye ederim.

C# 3.0 ile Tanışalım - 1 : C# 3.0 Ne Getiriyor ve LINQ Projesi Nedir?

C# 3.0 ile gelen yeniliklerin tamamı, LINQ projesine destek vermek amacını taşır. Dolayısıyla etüt edilen her yeni özelliğin bu çerçevede değerlendirilmesi gereklidir. Bütün yenilikler aynı zamanda C# 2.0 özellikleri ile entegre bir şekilde kullanılabilmektedir. C# 3.0 ile gelen yeni özellikleriden ilki Bilinçsizce Türlendirilmiş Lokal Değişken ve Dizi (Implicitly Typed Local Variable and Array) kavramıdır. Artık değişken tanımlamalarında veri tipi yerine var anahtar kelimesi kullanılabilmektedir:

var sayi1 = 12;            gibi...

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

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

  • Currently 4,5/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]

15 kişi tarafından 3.9 olarak değerlendirildi

  • Currently 3,933333/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




C# ve Nesne Yönelimli Programlamanın 3 Prensibi

clock Kasım 4, 2007 18:25 by author EmrahUslu

Kapsülleme (Encapsulation)

Nesne yönelimli programlamanın ilk prensibi kapsülleme (encapsulation) olarak adlandırılır. Bu özellik, dilin nesne kullanıcısından gereksiz uygulama ayrıntılarını saklayabilme yeteneği olarak ifade edilebilir. Örnek olarak .Net Framework temel sınıf kütüphanesi içerisinde yer alan ve Open() ve Close() metotlarına sahip SqlConnection sınıfını ele alalım.

  //SqlConnection, veritabanına yapılan bağlantının detaylarını kapsüllemektedir.
SqlConnection baglanti = new SqlConnection("server = London; database = AdventureWorks; integrated security = true");
baglanti.Open();
  //Burada veri yönetilir.
baglanti.Close();

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

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

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