<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-17025490</id><updated>2012-01-30T13:29:53.778+02:00</updated><category term='Visual Studio'/><category term='linq'/><category term='jQuery'/><category term='SQL'/><category term='MS Access'/><category term='silverlight'/><category term='ajax'/><category term='SQL Server'/><category term='gridview'/><category term='expression studio'/><category term='webiner'/><category term='sunum'/><category term='.net framework 3.5'/><category term='haberler'/><category term='c#'/><category term='.net framework 4.0'/><category term='asp.net ajax'/><category term='ado.net'/><category term='seminer'/><category term='nedirtv'/><category term='FileUpload'/><category term='veri kontrolleri'/><category term='dynamic data'/><category term='asp.net'/><category term='asp.net 2.0'/><category term='asp.net 4.0'/><category term='caching'/><category term='kişisel'/><category term='asp.net 3.5'/><category term='WPF'/><category term='asp.net mvc'/><category term='.net framework'/><category term='sitemap'/><title type='text'>Uğur UMUTLUOĞLU - Blog</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default?start-index=101&amp;max-results=100'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>199</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-17025490.post-8239161530372206752</id><published>2009-03-18T23:58:00.001+02:00</published><updated>2009-03-19T00:13:17.698+02:00</updated><title type='text'>Blogspot’a Veda</title><content type='html'>&lt;p&gt;Bundan sonraki yazılarımı sadece &lt;a href="http://www.umutluoglu.com/"&gt;&lt;strong&gt;www.umutluoglu.com&lt;/strong&gt;&lt;/a&gt; adresinde yayınlayacağım. Yani bu yazı, bu blogun son post’udur.&lt;/p&gt;&lt;p style="FONT-SIZE: 24px"&gt;&lt;a href="http://www.umutluoglu.com/"&gt;&lt;strong&gt;www.umutluoglu.com&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;Ayrıca RSS okuyucularında bu blogun RSS kaynağını saklayan arkadaşlar da blog RSS’imi şu linkle güncelleyebilirler:&lt;/p&gt;&lt;p style="FONT-SIZE: 14px"&gt;&lt;a title="http://www.umutluoglu.com/syndication.axd" href="http://www.umutluoglu.com/syndication.axd"&gt;&lt;strong&gt;www.umutluoglu.com/syndication.axd&lt;/strong&gt;&lt;/a&gt;&lt;br /&gt;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-8239161530372206752?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/8239161530372206752/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=8239161530372206752' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/8239161530372206752'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/8239161530372206752'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2009/03/blogspota-veda.html' title='Blogspot’a Veda'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-6777378054549899380</id><published>2009-03-15T23:42:00.000+02:00</published><updated>2009-03-15T23:52:56.231+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='nedirtv'/><category scheme='http://www.blogger.com/atom/ns#' term='seminer'/><title type='text'>nedirtv?com İstanbul Seminerlerinin Ardından</title><content type='html'>&lt;p&gt;Dün Microsoft İstanbul ofisinde gerçekleştirdiğimiz seminerleri başarıyla tamamladık. nedirtv?com’un 3.yılını kutladığımız bugünlerde gerçekleştirdiğimiz bu güzel etkinlikte &lt;strong&gt;Windows 7&lt;/strong&gt;, &lt;strong&gt;Multipoint Programlama&lt;/strong&gt;, &lt;strong&gt;ASP.NET 3.5&lt;/strong&gt;, &lt;strong&gt;C# 3.0&lt;/strong&gt; ve &lt;strong&gt;SQL Server 2008 &lt;/strong&gt;gibi konulara değindik. Sabah saat 10’da başlayıp akşam 18 civarında biten bu uzun gün bizler için oldukça keyifli ve eğlenceliydi. Dağıtılan değerli hediyeler de güne heyecan katan ayrı bir unsurdu. Etkinlik sonunda katılımcılardan aldığımız olumlu geribildirimler bizleri fazlasıyla mutlu etti. Buradan etkinliğimize sunumlarıyla ve gün boyunca sarfettikleri eforla büyük katkıları olan &lt;strong&gt;Fatih COŞKUN&lt;/strong&gt;, &lt;strong&gt;Daron YÖNDEM&lt;/strong&gt;, &lt;strong&gt;Burak Selim ŞENYURT&lt;/strong&gt;, &lt;strong&gt;Pamir ERDEM&lt;/strong&gt;’e ve değerli katılımcılara sonsuz teşekkürlerimi sunuyorum.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_657dzC0AiLc/Sb14sZDdVbI/AAAAAAAAAQ4/rg5xD6V2m0I/s1600-h/nedirtv_semineri%5B4%5D.jpg"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="nedirtv_semineri" border="0" alt="nedirtv_semineri" src="http://lh4.ggpht.com/_657dzC0AiLc/Sb14tiMIxII/AAAAAAAAAQ8/G3LK_Ebprq8/nedirtv_semineri_thumb%5B2%5D.jpg?imgmax=800" width="600" height="134" /&gt;&lt;/a&gt;     &lt;br /&gt;Günün sonunda çekilen bir hatıra fotoğrafı :)&lt;/p&gt;  &lt;p&gt;Bu arada nedirtv?com’un 3. yıldönümü etkinliklerinin bununla sınırlı olmayacağını, önümüzdeki ay içerisinde İstanbul’da veritabanı programcıları için, Mayıs ayı içerisinde de Ankara’daki yazılımcılar için güzel etkinlik planlarımızın olduğunu şimdiden belirtmek istiyorum. Detaylar için &lt;a href="http://www.nedirtv.com" target="_blank"&gt;www.nedirtv.com&lt;/a&gt; adresini takip etmeye devam ediniz…&lt;/p&gt;  &lt;p&gt;Etkinlik boyunca çekilen fotoğraflara erişmek için &lt;a href="http://cid-8eca4439fd9a640f.skydrive.live.com/browse.aspx/NedirTV%203.%20Yıl%20D&amp;ouml;n&amp;uuml;m&amp;uuml;%20İstanbul%20Etkinliği" target="_blank"&gt;bu linke&lt;/a&gt;&lt;strong&gt;&lt;/strong&gt; tıklayabilirsiniz (Fotoğraflar için Tuba ÇEBİ ve Daron’a ayrıca teşekkürler)&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-6777378054549899380?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/6777378054549899380/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=6777378054549899380' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/6777378054549899380'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/6777378054549899380'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2009/03/nedirtvcom-istanbul-seminerlerinin.html' title='nedirtv?com İstanbul Seminerlerinin Ardından'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_657dzC0AiLc/Sb14tiMIxII/AAAAAAAAAQ8/G3LK_Ebprq8/s72-c/nedirtv_semineri_thumb%5B2%5D.jpg?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-6222599907749921404</id><published>2009-03-13T00:19:00.000+02:00</published><updated>2009-03-13T00:31:25.689+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='webiner'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net'/><category scheme='http://www.blogger.com/atom/ns#' term='nedirtv'/><title type='text'>nedirtv?com Mart Ayı Webinerleri</title><content type='html'>&lt;p&gt;nedirtv?com webinerleri Mart ayında da tüm hızıyla devam ediyor. Sekiz farklı webinerin olacağı bu ayda &lt;strong&gt;XNA Game Studio&lt;/strong&gt;, &lt;strong&gt;Visual Basic.NET 9.0&lt;/strong&gt; ve &lt;strong&gt;SQL Server 2008&lt;/strong&gt; gibi konuları ilk defa ele alacağız. Benim de önümüzdeki hafta &lt;strong&gt;ASP.NET – Veriye Erişim – I &lt;/strong&gt;ve &lt;strong&gt;II&lt;/strong&gt; olmak üzere iki webinerim olacak.&lt;/p&gt;  &lt;p&gt;Yapılacak olan webinerlerle ilgili detaylı bilgileri görmek için &lt;strong&gt;&lt;a href="http://www.nedirtv.com/haber/nedirtvcom---Mart-Ayi-Webinerleri.aspx" target="_blank"&gt;bu linki&lt;/a&gt;&lt;/strong&gt;, etkinliği Facebook'taki ajandanıza kaydetmek ve etkinlik duyurularını takip etmek için &lt;strong&gt;&lt;a href="http://www.facebook.com/home.php#/event.php?eid=69740831784" target="_blank"&gt;bu linki&lt;/a&gt;&lt;/strong&gt; kullanabilirsiniz.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-6222599907749921404?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/6222599907749921404/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=6222599907749921404' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/6222599907749921404'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/6222599907749921404'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2009/03/nedirtvcom-mart-ay-webinerleri.html' title='nedirtv?com Mart Ayı Webinerleri'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-972173637758145622</id><published>2009-03-06T00:43:00.000+02:00</published><updated>2009-03-06T02:21:41.708+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='haberler'/><category scheme='http://www.blogger.com/atom/ns#' term='c#'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net 3.5'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL Server'/><category scheme='http://www.blogger.com/atom/ns#' term='nedirtv'/><category scheme='http://www.blogger.com/atom/ns#' term='seminer'/><title type='text'>nedirtv?com Seminerleri – İstanbul</title><content type='html'>&lt;p&gt;&lt;a href="http://lh3.ggpht.com/_657dzC0AiLc/SbBskFdmFgI/AAAAAAAAAQw/ZkSxSO1LNL8/s1600-h/nedirtv_3_yasinda%5B4%5D.gif"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; margin-left: 0px; border-left-width: 0px; margin-right: 0px" title="nedirtv_3_yasinda" border="0" alt="nedirtv_3_yasinda" align="left" src="http://lh6.ggpht.com/_657dzC0AiLc/SbBsk63GbWI/AAAAAAAAAQ0/-nurUA3oJaE/nedirtv_3_yasinda_thumb%5B2%5D.gif?imgmax=800" width="140" height="140" /&gt;&lt;/a&gt; nedirtv?com ailesi olarak 3. yılımızı &lt;strong&gt;14 Mart 2009 Cumartesi&lt;/strong&gt; günü &lt;strong&gt;İstanbul&lt;/strong&gt;'da gerçekleştireceğimiz seminerlerle kutluyoruz. Gün boyunca sürecek beş farklı seminerin olacağı ve günün sonunda süpriz hediyelerin de dağıtılacağı bu etkinliğe nedirtv?com üyelerinin katılımlarını bekliyoruz. &lt;/p&gt;  &lt;p&gt;Seminer programını aşağıda bulabilirsiniz. Seminere kayıt olmak için &lt;strong&gt;&lt;a href="http://www.nedirtv.com/EtkinlikKayit.aspx?EtkinlikId=1" target="_blank"&gt;bu sayfayı&lt;/a&gt;&lt;/strong&gt; kullanabilirsiniz. &lt;/p&gt;  &lt;p&gt;Seminerlerin &lt;strong&gt;ücretsiz&lt;/strong&gt; olacağını ve toplam kontenjanın da &lt;strong&gt;150 kişi&lt;/strong&gt; olacağını da belirtmek isterim.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;SEMİNER PROGRAMI&lt;/strong&gt;     &lt;br /&gt;    &lt;br /&gt;10:00-10:10 &lt;strong&gt;Açılış&lt;/strong&gt;     &lt;br /&gt;10:15-11:00 &lt;strong&gt;Windows 7 (Fatih Coşkun)&lt;/strong&gt;     &lt;br /&gt;11:00-12:00 &lt;strong&gt;Multipoint Programlama (Daron Yöndem)&lt;/strong&gt;     &lt;br /&gt;12:00-13:00 &lt;strong&gt;ASP.NET 3.5 SP1 Yenilikleri (Uğur Umutluoğlu)&lt;/strong&gt;     &lt;br /&gt;14:00-15:30 &lt;strong&gt;Derinlerde C# (Burak Selim Şenyurt)&lt;/strong&gt;     &lt;br /&gt;15:30-17:00 &lt;strong&gt;SQL Server 2008 ile Gelen Yenilikler (Pamir Erdem)&lt;/strong&gt;     &lt;br /&gt;17:00-17:15 &lt;strong&gt;Hediye Çekilişi ve Kapanış&lt;/strong&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-972173637758145622?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/972173637758145622/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=972173637758145622' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/972173637758145622'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/972173637758145622'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2009/03/nedirtvcom-seminerleri-istanbul.html' title='nedirtv?com Seminerleri – İstanbul'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_657dzC0AiLc/SbBsk63GbWI/AAAAAAAAAQ0/-nurUA3oJaE/s72-c/nedirtv_3_yasinda_thumb%5B2%5D.gif?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-2314310361113821159</id><published>2009-03-02T23:44:00.000+02:00</published><updated>2009-03-02T23:50:41.718+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WPF'/><category scheme='http://www.blogger.com/atom/ns#' term='silverlight'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net'/><category scheme='http://www.blogger.com/atom/ns#' term='linq'/><category scheme='http://www.blogger.com/atom/ns#' term='seminer'/><title type='text'>INETA Eskişehir Hit</title><content type='html'>&lt;p&gt;Bu hafta sonu &lt;strong&gt;Eskişehir&lt;/strong&gt;’de yeni bir INETA etkinliği ile Eskişehirli yazılım severlerle beraber olacağız. &lt;strong&gt;7-8 Mart&lt;/strong&gt; tarihlerinde &lt;strong&gt;Osmangazi Üniversitesi&lt;/strong&gt; Fen-Edebiyat Fakültesi F5 Blok Konferans salonunda gerçekleştireceğimiz seminerlere tüm Eskişehirliler davetlidir. Etkinlik programını aşağıda bulabilirsiniz.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;7 Mart Cumartesi     &lt;br /&gt;&lt;/strong&gt;10:00-12:00 &lt;em&gt;Silverlight 2.0     &lt;br /&gt;&lt;/em&gt;13:00-15:00 &lt;em&gt;XNA ile Oyun Programlama&lt;/em&gt;    &lt;br /&gt;15:30-17:30 &lt;em&gt;AJAX 4.0&lt;/em&gt; &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;8 Mart Pazar&lt;/strong&gt;    &lt;br /&gt;10:00-12:00 &lt;em&gt;WPF&lt;/em&gt;    &lt;br /&gt;13:00-14:30 &lt;em&gt;LINQ&lt;/em&gt;    &lt;br /&gt;15:00-17:00 &lt;em&gt;ASP.NET 3.5 ve SP1 Yenilikleri&lt;/em&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-2314310361113821159?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/2314310361113821159/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=2314310361113821159' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/2314310361113821159'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/2314310361113821159'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2009/03/ineta-eskisehir-hit.html' title='INETA Eskişehir Hit'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-8444721490851556983</id><published>2009-02-28T12:04:00.000+02:00</published><updated>2009-02-28T12:15:53.561+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='FileUpload'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL Server'/><title type='text'>FileUpload ile Yüklenen Dosyaları Veritabanında Saklamak</title><content type='html'>&lt;p&gt;FileUpload kontrolünün temel olarak istemciden aldığımız dosyaları sunucunun fiziksel bir konumuna kaydetmek için kullanırız. Fakat bazı durumlarda istemciden alınan bir dosyanın sunucuda güvenli şekilde saklanması için veritabanında saklama yoluna da gidebiliriz. Bu yazımda ASP.NET sunucu kontrollerinden olan FileUpload ile istemciden aldığımız bir dosyayı sunucudaki SQL Server gibi bir veritabanında nasıl saklayabileceğimizi inceleyeceğiz.&lt;/p&gt;  &lt;p&gt;İlk olarak dosya bilgilerini saklayacağımız bir tablo oluşturuyoruz.    &lt;br /&gt;&lt;a href="http://lh5.ggpht.com/_657dzC0AiLc/SakOzt7lRSI/AAAAAAAAAQY/72OIclGUVrY/s1600-h/fileupload_dosyalar_tablo%5B9%5D.gif"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="" border="0" alt="" src="http://lh6.ggpht.com/_657dzC0AiLc/SakO0JeYj0I/AAAAAAAAAQc/fCKIrFPq6DU/fileupload_dosyalar_tablo_thumb%5B7%5D.gif?imgmax=800" width="345" height="173" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Tablomuzda resmin adını, binary formatta dosya içeriğini ve dosyanın MIME type bilgisini saklayacağız. FileUpload kontrolünün üç farklı özelliği bize dosyanın bu bilgilerini getirecektir. Bu özelikler ve açıklamaları aşağıdadır:&lt;/p&gt;  &lt;table border="0" cellspacing="0" cellpadding="3"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td&gt;&lt;b&gt;FileName&lt;/b&gt;:&lt;/td&gt;        &lt;td&gt;Yüklenen dosyanın adı&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td&gt;&lt;b&gt;FileBytes&lt;/b&gt;:&lt;/td&gt;        &lt;td&gt;Dosyanın binary formatta içeriği (byte dizisi olarak getirilir)&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td&gt;&lt;b&gt;PostedFile.ContentType&lt;/b&gt;:&lt;/td&gt;        &lt;td&gt;Dosyanın MIME type bilgisi (MIME dosyanın formatını belirleyen bir isim standartıdır)&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;Artık sayfamızı tasarlayıp, gerekli kodlarımızı oluşturabiliriz.&lt;/p&gt;  &lt;div style="font-family: consolas, courier new; background: white; color: black; font-size: 10pt"&gt;   &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;form&lt;/span&gt; &lt;span style="color: red"&gt;id&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;form1&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;runat&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;server&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160; Yüklenecek dosyayı seçiniz:&lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;br&lt;/span&gt; &lt;span style="color: blue"&gt;/&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;FileUpload&lt;/span&gt; &lt;span style="color: red"&gt;ID&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;FileUpload1&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;runat&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt; &lt;span style="color: blue"&gt;/&amp;gt;&lt;/span&gt; &lt;span style="color: red"&gt;&amp;amp;nbsp;&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;Button&lt;/span&gt; &lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: red"&gt;ID&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;Button1&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;runat&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;Text&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;Dosyayı Yükle&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;onclick&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;Button1_Click&amp;quot;&lt;/span&gt; &lt;span style="color: blue"&gt;/&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;br&lt;/span&gt; &lt;span style="color: blue"&gt;/&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;br&lt;/span&gt; &lt;span style="color: blue"&gt;/&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;Label&lt;/span&gt; &lt;span style="color: red"&gt;ID&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;lblMesaj&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;runat&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;ForeColor&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;Red&amp;quot;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;Label&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;form&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt; &lt;/div&gt;  &lt;br /&gt;&lt;strong&gt;Default.aspx.cs&lt;/strong&gt;   &lt;br /&gt;  &lt;div style="font-family: consolas, courier new; background: white; color: black; font-size: 10pt"&gt;   &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;public&lt;/span&gt; &lt;span style="color: blue"&gt;partial&lt;/span&gt; &lt;span style="color: blue"&gt;class&lt;/span&gt; &lt;span style="color: #2b91af"&gt;_Default&lt;/span&gt; : System.Web.UI.&lt;span style="color: #2b91af"&gt;Page&lt;/span&gt; &lt;/p&gt;    &lt;p style="margin: 0px"&gt;{&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;protected&lt;/span&gt; &lt;span style="color: blue"&gt;void&lt;/span&gt; Button1_Click(&lt;span style="color: blue"&gt;object&lt;/span&gt; sender, &lt;span style="color: #2b91af"&gt;EventArgs&lt;/span&gt; e)&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160; {&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;if&lt;/span&gt;(FileUpload1.FileContent != &lt;span style="color: blue"&gt;null&lt;/span&gt;)&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;string&lt;/span&gt; dosyaAdi = FileUpload1.FileName; &lt;span style="color: green"&gt;//Dosyanın adı&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;byte&lt;/span&gt;[] dosyaIcerik = FileUpload1.FileBytes; &lt;span style="color: green"&gt;//Dosyanın bilgilerini binary formatta getirir&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;string&lt;/span&gt; dosyaTipi = FileUpload1.PostedFile.ContentType; &lt;span style="color: green"&gt;//Dosyanın MIME Type bilgisini getirir&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: #2b91af"&gt;SqlConnection&lt;/span&gt; con = &lt;span style="color: blue"&gt;new&lt;/span&gt; &lt;span style="color: #2b91af"&gt;SqlConnection&lt;/span&gt;(&lt;span style="color: #a31515"&gt;&amp;quot;data source=localhost; initial catalog=Test; integrated security=true&amp;quot;&lt;/span&gt;);&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: #2b91af"&gt;SqlCommand&lt;/span&gt; cmd = &lt;span style="color: blue"&gt;new&lt;/span&gt; &lt;span style="color: #2b91af"&gt;SqlCommand&lt;/span&gt;(&lt;span style="color: #a31515"&gt;&amp;quot;Insert Into Dosyalar Values(@dosya_isim, @dosya_icerik, @dosya_tip)&amp;quot;&lt;/span&gt;, con);&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; cmd.Parameters.AddWithValue(&lt;span style="color: #a31515"&gt;&amp;quot;@dosya_isim&amp;quot;&lt;/span&gt;, dosyaAdi);&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; cmd.Parameters.AddWithValue(&lt;span style="color: #a31515"&gt;&amp;quot;@dosya_icerik&amp;quot;&lt;/span&gt;, dosyaIcerik);&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; cmd.Parameters.AddWithValue(&lt;span style="color: #a31515"&gt;&amp;quot;@dosya_tip&amp;quot;&lt;/span&gt;, dosyaTipi);&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; con.Open();&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;if&lt;/span&gt; (cmd.ExecuteNonQuery() &amp;gt; 0)&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; lblMesaj.Text = &lt;span style="color: #a31515"&gt;&amp;quot;Dosya başarıyla yüklendi&amp;quot;&lt;/span&gt;;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; con.Close();&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160; }&lt;/p&gt;    &lt;p style="margin: 0px"&gt;}&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;Görüldüğü gibi SQL Server'da hazırladığımız Dosyalar adındaki tablo için yazılan bir INSERT cümlesine parametre olarak eklenen dosya bilgileri bu şekilde tablomuza eklenebiliyor. Birkaç kayıt ekledikten sonra tablomuzun içeriğini Management Studio gibi bir araçtan kontrol edecek olursak aşağıdaki gibi bir görüntüyle karşılaşırız. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_657dzC0AiLc/SakO0T5oNNI/AAAAAAAAAQg/87aJlWAyN68/s1600-h/fileupload_dosyalar_tablo_icerik%5B4%5D.gif"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="" border="0" alt="" src="http://lh3.ggpht.com/_657dzC0AiLc/SakO0ySauGI/AAAAAAAAAQk/GXg0M6007n0/fileupload_dosyalar_tablo_icerik_thumb%5B2%5D.gif?imgmax=800" width="397" height="107" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Resimleri başarıyla kaydettik, peki okuma işlemi nasıl gerçekleşecek? Okuma işlemi için ise tablomuzdaki kayıtları SELECT sorgusu ile okumamız gerekecek. Eğer Windows uygulamasında çalışıyor olsaydık DosyaIcerik kolonundan okunan kaydı System.Drawing.Image tipine çevirip Image gibi bir kontrolde görüntüleyebiliriz. Ancak web uygulamalarında bir resmi istemci tarafına taşımamızın yolu biraz daha farklı olacaktır. Resmin içeriği ancak istemciye yollanan cevabın(Response) içerisine yazdırılarak gönderilebilir. Dosyayı istemciye gönderirken dikkat edilmesi gereken hususlardan birisi dosyanın tarayıcıda görüntülenip görüntülenmeyeceğidir. Zira jpg, gif, xml, txt gibi dokumanlar web tarayıcısında görüntülenebilir dosyalarken, zip, exe, dll gibi dosyalar ise tarayıcıda görüntülenemez, ancak yüklenebilir dosyalardır. Aşağıdaki kod parçasında tasarladığımız bir sayfanın kullanıcıya veritabanındaki bir dosyanın nasıl iletilebileceği görülmektedir.&lt;/p&gt;  &lt;p&gt;Bu arada, dosyaya yapılan talep QueryString üzerinden resmin &lt;b&gt;DosyaId&lt;/b&gt; kolonundaki değer ile iletilmektedir. Yine talebin daha hızlı cevaplanması için Web Form(.aspx) dosyası yerine &lt;b&gt;Generic Handler(.ashx)&lt;/b&gt; dosyası kullanmak daha faydalı olacaktır.&lt;/p&gt; &lt;strong&gt;ResimGoruntule.ashx&lt;/strong&gt;   &lt;br /&gt;  &lt;div style="font-family: consolas, courier new; background: white; color: black; font-size: 10pt"&gt;   &lt;p style="margin: 0px"&gt;...&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;using&lt;/span&gt; System.Data.SqlClient;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;public&lt;/span&gt; &lt;span style="color: blue"&gt;class&lt;/span&gt; &lt;span style="color: #2b91af"&gt;ResimGoruntule&lt;/span&gt; : &lt;span style="color: #2b91af"&gt;IHttpHandler&lt;/span&gt; {&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;public&lt;/span&gt; &lt;span style="color: blue"&gt;void&lt;/span&gt; ProcessRequest (&lt;span style="color: #2b91af"&gt;HttpContext&lt;/span&gt; context) {&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;string&lt;/span&gt; id = context.Request.QueryString[&lt;span style="color: #a31515"&gt;&amp;quot;id&amp;quot;&lt;/span&gt;];&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;byte&lt;/span&gt;[] dosyaIcerik = &lt;span style="color: blue"&gt;null&lt;/span&gt;;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;string&lt;/span&gt; dosyaTipi = &lt;span style="color: #2b91af"&gt;String&lt;/span&gt;.Empty;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: #2b91af"&gt;SqlConnection&lt;/span&gt; con = &lt;span style="color: blue"&gt;new&lt;/span&gt; &lt;span style="color: #2b91af"&gt;SqlConnection&lt;/span&gt;(&lt;span style="color: #a31515"&gt;&amp;quot;data source=localhost; initial catalog=Test; integrated security=true&amp;quot;&lt;/span&gt;);&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: #2b91af"&gt;SqlCommand&lt;/span&gt; cmd = &lt;span style="color: blue"&gt;new&lt;/span&gt; &lt;span style="color: #2b91af"&gt;SqlCommand&lt;/span&gt;(&lt;span style="color: #a31515"&gt;&amp;quot;Select * From Dosyalar Where DosyaId=@id&amp;quot;&lt;/span&gt;, con);&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; cmd.Parameters.AddWithValue(&lt;span style="color: #a31515"&gt;&amp;quot;@id&amp;quot;&lt;/span&gt;, id);&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; con.Open();&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: #2b91af"&gt;SqlDataReader&lt;/span&gt; dr = cmd.ExecuteReader();&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;if&lt;/span&gt; (dr.Read())&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; dosyaIcerik = (&lt;span style="color: blue"&gt;byte&lt;/span&gt;[])dr[&lt;span style="color: #a31515"&gt;&amp;quot;DosyaIcerik&amp;quot;&lt;/span&gt;];&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; dosyaTipi = dr[&lt;span style="color: #a31515"&gt;&amp;quot;DosyaTip&amp;quot;&lt;/span&gt;].ToString();&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; con.Close();&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: green"&gt;//context.Response.AddHeader(&amp;quot;content-disposition&amp;quot;, &amp;quot;attachment; filename=&amp;quot; + dosyaAdi + &amp;quot;;&amp;quot;); //Download edilecek dosyanın adı belirleniyor. Bu satırın yorum durumu kaldırılırsa tüm dosyalar download işlemine zorlanacaktır.&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; context.Response.ContentType = dosyaTipi; &lt;span style="color: green"&gt;//Gönderilen dosyanın tipi belirtiliyor&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; context.Response.BinaryWrite(dosyaIcerik); &lt;span style="color: green"&gt;//Gönderilen cevabın içeriği dosyanın binary formattaki bilgileri olacaktır&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160; }&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;public&lt;/span&gt; &lt;span style="color: blue"&gt;bool&lt;/span&gt; IsReusable {&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;get&lt;/span&gt; {&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;return&lt;/span&gt; &lt;span style="color: blue"&gt;false&lt;/span&gt;;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160; }&lt;/p&gt;    &lt;p style="margin: 0px"&gt;}&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_657dzC0AiLc/SakO1cfCckI/AAAAAAAAAQo/Luh5qeXPIFk/s1600-h/fileupload_dosya_goruntuleme%5B9%5D.gif"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; margin-left: 0px; border-top: 0px; margin-right: 0px; border-right: 0px" title="" border="0" alt="" src="http://lh6.ggpht.com/_657dzC0AiLc/SakO1xT903I/AAAAAAAAAQs/mX5BQ-ZXvCw/fileupload_dosya_goruntuleme_thumb%5B7%5D.gif?imgmax=800" width="553" height="241" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Görüldüğü gibi Response nesnesinin BinaryWrite metodu byte dizisi olarak saklanan dosya içeriğini istemciye göndermektedir. Yine dosyanın tarayıcı tarafından tanınmasını ve işlemin sağlıklı şekilde tamamlanması için ContentType özelliğini de resmin MIME type değeri olarak belirliyoruz. Eğer resmin istemci tarafından download edilmesini istiyorsak kod içerisinde yorum satırı olarak bulunan ve AddHeader metodu ile sayfaya eklenen başlık bilgilerinin bulunduğu satırı normal hale getirmek gerekecektir.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-8444721490851556983?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/8444721490851556983/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=8444721490851556983' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/8444721490851556983'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/8444721490851556983'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2009/02/fileupload-ile-yuklenen-dosyalar.html' title='FileUpload ile Yüklenen Dosyaları Veritabanında Saklamak'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_657dzC0AiLc/SakO0JeYj0I/AAAAAAAAAQc/fCKIrFPq6DU/s72-c/fileupload_dosyalar_tablo_thumb%5B7%5D.gif?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-5333396431538278743</id><published>2009-02-24T00:24:00.001+02:00</published><updated>2009-02-24T00:52:57.836+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='dynamic data'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net ajax'/><category scheme='http://www.blogger.com/atom/ns#' term='linq'/><category scheme='http://www.blogger.com/atom/ns#' term='c#'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net 3.5'/><category scheme='http://www.blogger.com/atom/ns#' term='sunum'/><category scheme='http://www.blogger.com/atom/ns#' term='seminer'/><title type='text'>Bilkent Üniversitesi Yazılım Teknolojileri Seminerleri Ardından</title><content type='html'>&lt;p&gt;Geçtiğimiz hafta sonu &lt;strong&gt;Ankara&lt;/strong&gt;’da &lt;strong&gt;Bilkent Üniversitesi&lt;/strong&gt;’ndeydim. &lt;strong&gt;&lt;a href="http://daron.yondem.com/tr" target="_blank"&gt;Daron Yöndem&lt;/a&gt;&lt;/strong&gt; ile beraber Bilkentli teknolojistlerle dolu dolu iki günde .NET teknolojileriyle ilgili bilgi ve tecrübelerimizi paylaşmaya çalıştık. Ben Cumartesi günü &lt;strong&gt;C# 3.0 ve LINQ&lt;/strong&gt;, Pazar günü ise &lt;strong&gt;ASP.NET 3.5 ve SP1 ile Gelen Yenilikler&lt;/strong&gt; sunumlarımla bu güzel etkinliğe katkıda bulunurken, Daron’da &lt;strong&gt;Silverlight&lt;/strong&gt;, &lt;strong&gt;WPF&lt;/strong&gt; ve &lt;strong&gt;WCF&lt;/strong&gt; sunumlarını gerçekleştirdi. Karlı ve soğuk bir Ankara havasında salonu tıka basa dolduran öğrenci arkadaşlarla birlikte oldukça keyifli sunumlar gerçekleştirdik. Uzun bir aradan sonra tekrar Ankara’da olmak, Ankara’daki arkadaşlarımla zaman geçirmek bu hafta sonunun anılarımda daha da güzel bir şekilde yer almasını sağladı :)&lt;/p&gt;&lt;p&gt;&lt;a href="http://lh4.ggpht.com/_657dzC0AiLc/SaMnbF5oqqI/AAAAAAAAAQI/bTz7zzngWE0/s1600-h/bilkent_ilkgun2%5B7%5D.jpg"&gt;&lt;img style="BORDER-RIGHT-WIDTH: 0px; DISPLAY: inline; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px" title="bilkent_ilkgun2" border="0" alt="bilkent_ilkgun2" src="http://lh4.ggpht.com/_657dzC0AiLc/SaMnb9H1XWI/AAAAAAAAAQM/9gvlIpvln6o/bilkent_ilkgun2_thumb%5B5%5D.jpg?imgmax=800" width="240" height="180" /&gt;&lt;/a&gt;  &lt;a href="http://lh6.ggpht.com/_657dzC0AiLc/SaMnc2xfpzI/AAAAAAAAAQQ/3EKH1fbIAkc/s1600-h/bilkent_ilkgun1%5B3%5D.jpg"&gt;&lt;img style="BORDER-RIGHT-WIDTH: 0px; DISPLAY: inline; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px" title="bilkent_ilkgun1" border="0" alt="bilkent_ilkgun1" src="http://lh3.ggpht.com/_657dzC0AiLc/SaMnd-awkjI/AAAAAAAAAQU/v03X87ypKRE/bilkent_ilkgun1_thumb%5B1%5D.jpg?imgmax=800" width="240" height="180" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;em&gt;Etkinliğin ilk gününden iki kare&lt;/em&gt; &lt;/p&gt;&lt;p&gt;Vee katılımcı arkadaşlara söz verdiğim gibi etkinlik dosyalarını paylaşıyorum. Oturumlarda kullandığım sunumları ve kod örneklerini aşağıdaki linklerden indirebilirsiniz. Etkinlikte emeği geçen başta MSP arkadaşlarım &lt;strong&gt;Ali Uğur Çakmak&lt;/strong&gt; ve &lt;strong&gt;Alper Özçetin&lt;/strong&gt; olmak üzere tüm arkadaşlara teşekkürlerimi buradan da iletiyorum.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;a href="http://www.nedirtv.com/files/etkinlikler/3Agustos_YTU/LINQ_Sunum.ppt"&gt;C# 3.0 ve LINQ Sunumu&lt;/a&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;a href="http://www.nedirtv.com/files/etkinlikler/3Agustos_YTU/LINQ_Demolar.zip"&gt;C# 3.0 ve LINQ Demolar&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.nedirtv.com/Files/etkinlikler/21Subat_Bilkent/ASPNET35_SP1.pptx" target="_blank"&gt;ASP.NET 3.5 ve SP1 Sunumu&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.nedirtv.com/Files/etkinlikler/21Subat_Bilkent/ASPNET35-SP1-Demo.zip" target="_blank"&gt;ASP.NET 3.5 ve SP1 Demolar&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-5333396431538278743?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/5333396431538278743/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=5333396431538278743' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/5333396431538278743'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/5333396431538278743'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2009/02/bilkent-universitesi-yazlm.html' title='Bilkent Üniversitesi Yazılım Teknolojileri Seminerleri Ardından'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_657dzC0AiLc/SaMnb9H1XWI/AAAAAAAAAQM/9gvlIpvln6o/s72-c/bilkent_ilkgun2_thumb%5B5%5D.jpg?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-5171265828545536173</id><published>2009-02-15T00:26:00.002+02:00</published><updated>2009-02-16T00:51:53.755+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.net framework 4.0'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net 4.0'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net mvc'/><title type='text'>ASP.NET 4.0 ve Vadettikleri</title><content type='html'>&lt;p&gt;&lt;/p&gt;&lt;p&gt;Geçtiğimiz aylarda gerçekleştirilen &lt;strong&gt;PDC&lt;/strong&gt; etkinliğinde önümüzdeki 1-2 yıl içerisinde .NET dünyasında bizleri bekleyen yenilikler anlatıldı. Bu yeniliklerden biri de &lt;strong&gt;ASP.NET 4.0&lt;/strong&gt;'dı. &lt;strong&gt;.NET Framework 4.0&lt;/strong&gt; ile 4 numaralı versiyonuna erişecek ASP.NET'te bizleri gerçekten önemli yenilikler bekliyor. Zaten bunun ilk uyarılarını &lt;strong&gt;.NET Framework SP1&lt;/strong&gt; ve &lt;strong&gt;ASP.NET MVC&lt;/strong&gt; ile alıyoruz. ASP.NET’in 1.1 sürümünden 2.0 sürümüne geçiş kadar derin yenilikler olmasa da, 2.0’dan 3.5’e geçişteki yeniliklerden çok daha fazlası yeni sürümde bizleri bekliyor. Henüz ne zaman doğacağı bile kesin olmayan bir teknoloji hakkında birşeyler yazmak normal şartlarda zordur. Ancak Microsoft sağolsun, daha şimdiden bize öyle ipuçları, öyle araçlar sunuyor ki birkaç sene sonraki yenilikleri şimdiden okuyabilme, inceleyebilme, hatta test edebilme şansını yakalayabiliyoruz. İşte bu izlenimlerim sonucunda sizlerle paylaşmak istediklerim: &lt;/p&gt;&lt;p&gt;Gelecek olan yeniliklere baktığımızda mimariye eklenen köklü değişikliklerin yanı sıra, varolan yapıda aksaklılara neden olan ve çoğu ASP.NET programcısının şikayetlerinin ciddi anlamda giderilmeye çalışıldığı görülüyor. &lt;strong&gt;MVC Framework&lt;/strong&gt;, &lt;strong&gt;Routing&lt;/strong&gt;, &lt;strong&gt;Dynamic Data&lt;/strong&gt;, &lt;strong&gt;Chart kontrolleri&lt;/strong&gt;, &lt;strong&gt;Ajax&lt;/strong&gt; tarafındaki yeni eklentiler ve kontroller aslında 4.0 sürümünde bizleri bekleyen en ciddi yenilikler olarak göze çarpıyor. Diğer yandan şu an varolan ViewState ile ilgili sorunlar, Master-Content Page, User Control’ler ile veri kontrollerinin template’lerindeki kontrollerin istemci tarafına taşındığında ID bilgilerinin değişmesi ve ele alınmasının zorlaşması, kontrol çıktılarının &amp;lt;table&amp;gt; elementi olarak üretilmesi gibi sorunların giderilmesine yönelik yeniliklerin daha şimdiden geldiğini görebilmek, hatta test edebilmek mümkün(CTP sürümünde bu özelliklerin çoğunu test edebiliyoruz). Yine &lt;strong&gt;Visual Studio 2010&lt;/strong&gt;’da 2.0 sürümünden 4.0 sürümüne kadar multi-targetting özelliğinin olması, &lt;strong&gt;JQuery&lt;/strong&gt; desteğinin gelmesi bizi bekleyen olumlu gelişmeler. Bunların dışında yine ufak tefek, ancak etkileyici yenilikler de önümüzdeki Beta sürümlerde eklenerek, nihai sürümde karşımıza yepyeni bir ASP.NET geliştirme ortamı çıkacak gibi görünüyor.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-5171265828545536173?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/5171265828545536173/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=5171265828545536173' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/5171265828545536173'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/5171265828545536173'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2009/02/aspnet-40-ve-vaadettikleri.html' title='ASP.NET 4.0 ve Vadettikleri'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-1475162577046568885</id><published>2009-02-11T12:27:00.003+02:00</published><updated>2009-02-11T12:45:21.126+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='caching'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net'/><title type='text'>Birden Fazla Tabloyu CacheDependency Yapısında Önbelleklemek</title><content type='html'>&lt;p&gt;&lt;strong&gt;SqlCacheDependency&lt;/strong&gt; nesnesi ASP.NET uygulamalarında veritabanındaki güncellemelere göre önbellekleme yapılmasını sağlayan nesnedir. Zamana bağımlı kalmadan çok daha hızlı ve performans açısından önemli kazançlar sağlayan bu nesneyi tek bir tablodan gelen kayıtların önbelleklenmesi için kullanabiliyoruz. Fakat çoğu uygulamada JOIN'li ifadelerle birden fazla tablonun verilerini eşleştirebiliyoruz. Peki böyle bir durumda önbellekleme işlemini SqlCacheDependency nesnesi ile nasıl gerçekleştirebileceğiz? Çünkü yapısı itibariyle bu nesne tek tablo ile çalışabilir şekilde tasarlanmıştır. Sorumuzun cevabı: &lt;strong&gt;AggregateCacheDependency&lt;/strong&gt; nesnesi(Yanılmıyorsam .NET Framework 2.0 ile gelen bir tiptir). AggregateCacheDependency nesnesi birden fazla CacheDependency nesnesini içerisinde saklayarak, herhangi bir nesnenin durumunun değişmesinde Cache nesnesinin bellekteki bilgilerini kaldıracak ve önbellekleme işlemini başarılı şekilde yapabilmemizi sağlayacaktır. Yapmamız gereken tek işlem herbir tablo için oluşturduğumuz SqlCacheDependency nesnelerini AggregateCacheDependency nesnesine &lt;strong&gt;Add&lt;/strong&gt; metodu ile eklemek ve bu nesneyi &lt;strong&gt;Cache&lt;/strong&gt;'e &lt;strong&gt;Insert&lt;/strong&gt; metodu aracılığıyla eklemektir. Aşağıdaki kod parçalarında bu işlemin nasıl yapılabileceğini görebilirsiniz. &lt;/p&gt;&lt;p&gt;&lt;div style="BACKGROUND: white;font-family:consolas, courier new;font-size:10pt;color:black;"   &gt;&lt;span style="color:#2b91af;"&gt;SqlCacheDependency&lt;/span&gt; dep1 = &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;SqlCacheDependency&lt;/span&gt;(&lt;span style="color:#a31515;"&gt;"dbCon"&lt;/span&gt;, &lt;span style="color:#a31515;"&gt;"Urunler"&lt;/span&gt;); &lt;span style="color:#2b91af;"&gt;&lt;br /&gt;SqlCacheDependency&lt;/span&gt; dep2 = &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;SqlCacheDependency&lt;/span&gt;(&lt;span style="color:#a31515;"&gt;"dbCon"&lt;/span&gt;, &lt;span style="color:#a31515;"&gt;"Siparisler"&lt;/span&gt;); &lt;p style="MARGIN: 0px"&gt;&lt;span style="color:#2b91af;"&gt;SqlCacheDependency&lt;/span&gt; dep3 = &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;SqlCacheDependency&lt;/span&gt;(&lt;span style="color:#a31515;"&gt;"dbCon"&lt;/span&gt;, &lt;span style="color:#a31515;"&gt;"Musteriller"&lt;/span&gt;);&lt;/p&gt;&lt;p style="MARGIN: 0px"&gt;&lt;/p&gt;&lt;p style="MARGIN: 0px"&gt;&lt;/p&gt;&lt;p style="MARGIN: 0px"&gt;&lt;span style="color:#2b91af;"&gt;&lt;br /&gt;AggregateCacheDependency&lt;/span&gt; &lt;strong&gt;aggDep&lt;/strong&gt; = &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;AggregateCacheDependency&lt;/span&gt;();&lt;/p&gt;&lt;p style="MARGIN: 0px"&gt;&lt;/p&gt;&lt;p style="MARGIN: 0px"&gt;aggDep.Add(dep1,dep2,dep3); &lt;/p&gt;&lt;p style="MARGIN: 0px"&gt;&lt;/p&gt;&lt;p style="MARGIN: 0px"&gt;&lt;br /&gt;Cache.Insert(&lt;span style="color:#a31515;"&gt;"urunSiparis"&lt;/span&gt;, dt, &lt;strong&gt;aggDep&lt;/strong&gt;); &lt;/p&gt;&lt;/div&gt;&lt;p&gt;SqlCacheDependency ASP.NET uygulamalarında çok verimli şekilde önbellekleme işlemleri yapılmasını sağlar. Ancak hangi şekilde olursa olsun, önbellekleme işlemlerinde unutulmaması gereken nokta, çok büyük verileri Cache'te saklayacak olursak ve sistem kaynakları yeterli değilse bazı durumlarda &lt;strong&gt;OutOfMemoryException&lt;/strong&gt; hatası alabiliriz. Yani hem hataların oluşması, hem de bellekte çok fazla yer işgal etmek uygulamanın performansı adına kötü pratikler olacaktır(&lt;em&gt;bkz: Kaş yapalım derken göz çıkarmak&lt;/em&gt;). Bu nedenle Cache'te saklanacak verilerin boyutu bizim için önemli bir kriterdir, bu ayrıntıyı unutmamak lazım. &lt;/p&gt;&lt;p&gt;Bu arada yeri gelmişken ASP.NET uygulamalarında performans ipuçlarına ihtiyacınız varsa, bu Cuma akşamı gerçekleşecek olan webinerime katılımlarınızı beklerim. Bilgileri &lt;strong&gt;&lt;a href="http://www.nedirtv.com/haber/nedirtvcom---Subat-Ayi-Webinerleri.aspx" target="_blank"&gt;bu adresten&lt;/a&gt;&lt;/strong&gt; bulabilirsiniz.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-1475162577046568885?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/1475162577046568885/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=1475162577046568885' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/1475162577046568885'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/1475162577046568885'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2009/02/birden-fazla-tabloyu-cachedependency.html' title='Birden Fazla Tabloyu CacheDependency Yapısında Önbelleklemek'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-5321972790800129162</id><published>2009-02-04T08:53:00.000+02:00</published><updated>2009-02-04T09:02:21.688+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='webiner'/><category scheme='http://www.blogger.com/atom/ns#' term='haberler'/><title type='text'>nedirtv?com Şubat Ayı Webinerleri</title><content type='html'>&lt;p&gt;&lt;img style="border-right-width: 0px; margin: 0px 5px 5px 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" border="0" align="left" src="http://lh6.ggpht.com/_657dzC0AiLc/SWDY-o5jk4I/AAAAAAAAAPU/bsYAeE5zpjw/nedirtv_webinerleri_thumb[2].gif?imgmax=800" /&gt;nedirtv?com webinerleri tüm hızıyla devam ediyor. &lt;strong&gt;Ineta Türkiye&lt;/strong&gt;’nin de desteğiyle nedirtv?com editörleri olarak bu ay 7 farklı konuda gerçekleşecek webinerlerde yazılım geliştiricilerle beraber olacağız. &lt;strong&gt;ASP.NET AJAX 3.5, Expression Blend 2, ADO.NET Data Services Güvenlik , ASP.NET Uygulamalarında Performans İpuçları , Windows Workflow Foundation, MOSS 2007-InfoPath Form Services, Expression Web 2&lt;/strong&gt; gibi konular üzerinde yapılacak webinerler hakkında daha detaylı bilgi almak için &lt;a href="http://www.nedirtv.com/haber/nedirtvcom---Subat-Ayi-Webinerleri.aspx" target="_blank"&gt;&lt;strong&gt;bu linkteki&lt;/strong&gt;&lt;/a&gt; haberi okuyabilir, webinerlerin duyurularını almak için de &lt;strong&gt;&lt;a href="http://www.facebook.com/event.php?eid=48464993278" target="_blank"&gt;bu linkteki&lt;/a&gt;&lt;/strong&gt; olayı Facebook ajandanıza kaydedebilirsiniz.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-5321972790800129162?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/5321972790800129162/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=5321972790800129162' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/5321972790800129162'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/5321972790800129162'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2009/02/nedirtvcom-subat-ay-webinerleri.html' title='nedirtv?com Şubat Ayı Webinerleri'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_657dzC0AiLc/SWDY-o5jk4I/AAAAAAAAAPU/bsYAeE5zpjw/s72-c/nedirtv_webinerleri_thumb[2].gif?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-7506279967361946600</id><published>2009-01-28T21:46:00.001+02:00</published><updated>2009-01-31T20:51:48.038+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='kişisel'/><title type='text'>İş Değişikliği</title><content type='html'>&lt;p&gt;Bu hafta itibariyle sektördeki çalışmalarıma artık &lt;strong&gt;&lt;a href="http://www.innova.com.tr/" target="_blank"&gt;Innova&lt;/a&gt;&lt;/strong&gt;’da &lt;strong&gt;Uygulama Geliştirme Uzmanı&lt;/strong&gt; olarak devam ediyorum. Innova bünyesinde oldukça önemli projelerde görev almanın bana çok şey katacağından eminim. Kendim ve Innova adına hayırlı olması dileğiyle.&lt;/p&gt;&lt;p&gt;İki yılı aşkın süredir çalıştığım &lt;strong&gt;Netron&lt;/strong&gt;’dan ve eğitmenlikten ayrılmak benim için biraz zor oldu tabii ki. Bu süreçte hep yanımda olan değerli iş arkadaşlarıma buradan da teşekkür etmeyi bir borç olarak görüyorum.&lt;/p&gt;&lt;p&gt;Bu arada Netron mail hesabımdan bana ulaşan arkadaşların artık umutluoglu (at) gmail.com adresini kullanmalarını rica edeceğim.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-7506279967361946600?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/7506279967361946600/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=7506279967361946600' title='3 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/7506279967361946600'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/7506279967361946600'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2009/01/is-degisikligi.html' title='İş Değişikliği'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-2337413221394253574</id><published>2009-01-28T08:46:00.001+02:00</published><updated>2009-01-28T09:21:19.649+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='asp.net'/><category scheme='http://www.blogger.com/atom/ns#' term='haberler'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net mvc'/><title type='text'>ASP.NET MVC 1.0 RC Resmen Duyuruldu</title><content type='html'>&lt;p&gt;Dün &lt;strong&gt;Internet Explorer 8.0&lt;/strong&gt;’ın RC1 sürümünün duyurulmasının ardından bu sabahta bir başka önemli Release Candidate duyurusu RSS okuyucularımıza düştü. Aylardır beklediğimiz &lt;strong&gt;ASP.NET MVC Framework 1.0&lt;/strong&gt;’ın Release Candidate sürümü bugün itibariyle herkese açılmış durumda. Önümüzdeki ay içerisinde 1.0 versiyonunun (tahminimce Mart ayını bulur) duyurulması bekleniyor ve en güzel haberlerden birisi de 1.0 versiyonu hemen hemen RC versiyonu ile aynı olacak, yani ciddi değişiklikler beklenmiyor. Bu da RC sürümünü ciddi olarak incelemek için oldukça geçerli bir sebep. &lt;/p&gt;&lt;p&gt;&lt;a href="http://go.microsoft.com/fwlink/?LinkID=141184&amp;amp;clcid=0x409" target="_blank"&gt;&lt;strong&gt;Bu linkten&lt;/strong&gt;&lt;/a&gt; indirebileceğiniz yeni sürümle ilgili bilgileri şimdilik Scott Guthrie ve David Hayden’in yazılarından incelemenizi tavsiye ederim.&lt;/p&gt;&lt;p&gt;&lt;a href="http://weblogs.asp.net/scottgu/archive/2009/01/27/asp-net-mvc-1-0-release-candidate-now-available.aspx" target="_blank"&gt;Scott Guthrie - ASP.NET MVC 1.0 Release Candidate Now Available&lt;/a&gt;&lt;br /&gt;&lt;a href="http://davidhayden.com/blog/dave/archive/2009/01/27/DownloadASPNETMVC10ReleaseCandidate.aspx" target="_blank"&gt;David Hayden - Download ASP.NET MVC 1.0 Release Candidate&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-2337413221394253574?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/2337413221394253574/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=2337413221394253574' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/2337413221394253574'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/2337413221394253574'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2009/01/aspnet-mvc-10-rc-resmen-duyuruldu.html' title='ASP.NET MVC 1.0 RC Resmen Duyuruldu'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-1778104595665849371</id><published>2009-01-25T15:40:00.000+02:00</published><updated>2009-01-25T16:12:52.095+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ajax'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net ajax'/><title type='text'>AJAX Sayfalarında Geç Yüklenme İşlemleri</title><content type='html'>&lt;p&gt;Sayfanızda senkron şekilde y&amp;#252;klenecek i&amp;#231;eriklerinizle beraber UpdatePanel'inizin i&amp;#231;erisinde de asenkron y&amp;#252;klenecek i&amp;#231;erikleriniz var. Fakat UpdatePanel i&amp;#231;erikleri biraz yavaş y&amp;#252;klenecek gibi... Biraz daha somut bir &amp;#246;rnek verecek olursam normal i&amp;#231;eriklerinizin y&amp;#252;klenmesi 2 saniye, asenkron i&amp;#231;eriklerinizin y&amp;#252;klenmesi de yaklaşık 7-8 saniye s&amp;#252;r&amp;#252;yor. Normal işleyişte sayfanın tamamının oluşturulup istemciye g&amp;#246;nderilmesini bekleyecek olursak en az 7-8 saniye istemciyi bekleteceğiz. Peki sayfanın ilk y&amp;#252;klenmesi esnasında, istemcinin tarayısına &amp;#246;nce senkron y&amp;#252;klenecek olan i&amp;#231;eriği g&amp;#246;ndersek, bu esnada da UpdatePanel i&amp;#231;eriği y&amp;#252;klenmeye devam etse? Nasıl yapabiliriz ki b&amp;#246;yle bir işlemi diye soruyorsunuz sanırım. Bu yazımda ASP.NET AJAX uygulamalarında &lt;strong&gt;y&amp;#252;klemeyi geciktirme(delay loading)&lt;/strong&gt; işlemini nasıl ger&amp;#231;ekleştirebileceğimize bakıyoruz.&lt;/p&gt;  &lt;p&gt;&amp;#214;ncelikle gerekli malzemeler; 1 ScriptManager, 1 Label(senkron i&amp;#231;erik i&amp;#231;in), 1 UpdatePanel, panel i&amp;#231;erisine 1 Button ve asenkron i&amp;#231;eriği y&amp;#252;klemek i&amp;#231;in 1 Label daha(sayfamız biraz daha yakışıklı olsun istersek 1 tane de UpdateProgress). İlk label normal i&amp;#231;eriği saklayacak, yani ilk y&amp;#252;kleme sonucunda istemciye bu kontrol dolu gidecek. Diğer label ise asenkron g&amp;#252;ncellenecek olan kontrol&amp;#252;m&amp;#252;z, yani buradaki y&amp;#252;kleme işlemi sayfa istemciye ulaştıktan hemen sonra ger&amp;#231;ekleşecek. Sayfamızın HTML kodları ve UpdatePanel'i asenkron g&amp;#252;ncellenmesinde kullanacağımız kodlar aşağıdaki gibidir.&lt;/p&gt;  &lt;div&gt;&lt;strong&gt;Default.aspx&lt;/strong&gt;     &lt;br /&gt;&lt;/div&gt;  &lt;div style="font-size: 10pt; background: white; color: black; font-family: consolas, courier new"&gt;   &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;ScriptManager&lt;/span&gt; &lt;span style="color: red"&gt;ID&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;ScriptManager1&amp;quot; &lt;/span&gt;&lt;span style="color: red"&gt;runat&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;server&amp;quot;&amp;gt;&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;ScriptManager&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;Label&lt;/span&gt; &lt;span style="color: red"&gt;ID&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;lblStatik&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;runat&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;Text&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;Burası statik i&amp;#231;eriğin geleceği yer&amp;quot;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;Label&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;br&lt;/span&gt; &lt;span style="color: blue"&gt;/&amp;gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;br&lt;/span&gt; &lt;span style="color: blue"&gt;/&amp;gt;&lt;/span&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;UpdatePanel&lt;/span&gt; &lt;span style="color: red"&gt;ID&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;UpdatePanel1&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;runat&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;server&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;ContentTemplate&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;LinkButton&lt;/span&gt; &lt;span style="color: red"&gt;ID&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;lbGuncelle&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;runat&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;Text&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;G&amp;#252;ncelle&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;onclick&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;lbGuncelle_Click&amp;quot;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;LinkButton&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;br&lt;/span&gt; &lt;span style="color: blue"&gt;/&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;Label&lt;/span&gt; &lt;span style="color: red"&gt;ID&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;lblAsenkronIcerik&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;runat&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;server&amp;quot;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;Label&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;br&lt;/span&gt; &lt;span style="color: blue"&gt;/&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;UpdateProgress&lt;/span&gt; &lt;span style="color: red"&gt;ID&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;UpdateProgress1&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;runat&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;server&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;ProgressTemplate&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Bilgiler y&amp;#252;kleniyor. Bekleyiniz...&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;ProgressTemplate&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;UpdateProgress&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;ContentTemplate&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;UpdatePanel&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt; &lt;/div&gt;  &lt;br /&gt;&lt;strong&gt;Default.aspx.cs&lt;/strong&gt;   &lt;br /&gt;  &lt;div style="font-size: 10pt; background: white; color: black; font-family: consolas, courier new"&gt;   &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;protected&lt;/span&gt; &lt;span style="color: blue"&gt;void&lt;/span&gt; Page_Load(&lt;span style="color: blue"&gt;object&lt;/span&gt; sender, &lt;span style="color: #2b91af"&gt;EventArgs&lt;/span&gt; e)&lt;/p&gt;    &lt;p style="margin: 0px"&gt;{&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160; lblStatik.Text = &lt;span style="color: #a31515"&gt;&amp;quot;Bu kontrol statik i&amp;#231;erikleri saklıyor&amp;quot;&lt;/span&gt;;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;}&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;protected&lt;/span&gt; &lt;span style="color: blue"&gt;void&lt;/span&gt; lbGuncelle_Click(&lt;span style="color: blue"&gt;object&lt;/span&gt; sender, &lt;span style="color: #2b91af"&gt;EventArgs&lt;/span&gt; e)&lt;/p&gt;    &lt;p style="margin: 0px"&gt;{&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160; System.Threading.&lt;span style="color: #2b91af"&gt;Thread&lt;/span&gt;.Sleep(3000); &lt;span style="color: green"&gt;//İşlemi geciktirmek i&amp;#231;in&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160; lblAsenkronIcerik.Text = &lt;span style="color: #2b91af"&gt;DateTime&lt;/span&gt;.Now.ToString();&lt;/p&gt;    &lt;p style="margin: 0px"&gt;}&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;G&amp;#246;r&amp;#252;ld&amp;#252;ğ&amp;#252; gibi lbGuncelle isimli LinkButton kontrol&amp;#252; UpdatePanel i&amp;#231;eriğini g&amp;#252;ncelliyor. Sayfa bu haliyle ilk y&amp;#252;klendiğinde UpdatePanel'de herhangi bir &amp;#231;ıktı oluşmaz. Ancak sayfa ilk y&amp;#252;klendiğinde LinkButton'a otomatik olarak postback yaptırabilirsek bu esnada UpdatePanel i&amp;#231;eriği de istemciye gecikmeli olarak ulaşacaktır. İşte bu postback işlemini istemcide sayfa y&amp;#252;klendiği anda yapabilirsek y&amp;#252;klenmenin gecikmeli olarak ger&amp;#231;ekleşmesi sağlanacaktır. Burada iki soru var; ilki istemciye sayfanın y&amp;#252;klendiği anı nasıl yakalayabilirim, ikincisi ise LinkButton'a tıklamadan nasıl partial postback işlemini tetiklerim? Her iki işlem de istemci tarafında ger&amp;#231;ekleşecek olaylar olduğu i&amp;#231;in işin ucu JavaScript'e değiyor. Sayfanın y&amp;#252;klenmesi anında JavaScript'in &lt;strong&gt;pageLoad&lt;/strong&gt; fonksiyonu devreye girer. Diğer yandan programatik şekilde bir kontrol&amp;#252; postback işlemine tabi tutmanın yolu da &lt;strong&gt;__doPostBack&lt;/strong&gt; adındaki JavaScript fonksiyonundan ge&amp;#231;er. Aşağıdaki JavaScript pageLoad fonksiyonu, UpdatePanel i&amp;#231;eriğinin sayfanın ilk y&amp;#252;klenmesi esnasında gecikmeli olarak y&amp;#252;klenmesini sağlayacaktır.&lt;/p&gt; &lt;strong&gt;Default.aspx&lt;/strong&gt;   &lt;br /&gt;  &lt;div style="font-size: 10pt; background: white; color: black; font-family: consolas, courier new"&gt;   &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;script&lt;/span&gt; &lt;span style="color: red"&gt;language&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;javascript&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;type&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;text/javascript&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;var&lt;/span&gt; ilkYuklenme = &lt;span style="color: blue"&gt;true&lt;/span&gt;;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;function&lt;/span&gt; pageLoad()&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160; {&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;if&lt;/span&gt;(ilkYuklenme) &lt;span style="color: green"&gt;// if bloğuna sadece bir kez girilmesi i&amp;#231;in&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; __doPostBack(&lt;span style="color: #a31515"&gt;'lbGuncelle'&lt;/span&gt;, &lt;span style="color: #a31515"&gt;''&lt;/span&gt;); &lt;span style="color: green"&gt;//LinkButton'a programatik olarak PostBack işlemi yaptırdık&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; ilkYuklenme = &lt;span style="color: blue"&gt;false&lt;/span&gt;; &lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160; }&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;script&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;Sayfa istemciye y&amp;#252;kleniyorken &lt;strong&gt;pageLoad&lt;/strong&gt; fonksiyonu &amp;#231;alışır. &lt;strong&gt;ilkYukleme&lt;/strong&gt; değişkeni bu esnada true olduğu i&amp;#231;in LinkButton kontrol&amp;#252; postback işlemi yapar ve UpdatePanel i&amp;#231;eriği g&amp;#252;ncellenmeye başlanır. &lt;strong&gt;Thread&lt;/strong&gt; sınıfının &lt;strong&gt;Sleep&lt;/strong&gt; metodu ile geciktirme işlemi yaptığımız i&amp;#231;in &amp;#231;ok a&amp;#231;ık bir şekilde sayfa istemciye y&amp;#252;klendiğinde gecikmeli olarak UpdatePanel'in i&amp;#231;eriği g&amp;#252;ncellendiğini g&amp;#246;rebiliriz.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_657dzC0AiLc/SXxvBj4FhHI/AAAAAAAAAPo/VsnOSHWXvuE/s1600-h/ajax-delay-loading%5B4%5D.gif"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="136" alt="ajax delay loading" src="http://lh4.ggpht.com/_657dzC0AiLc/SXxvCaxGIpI/AAAAAAAAAPs/DHWXHa0knec/ajax-delay-loading_thumb%5B2%5D.gif?imgmax=800" width="462" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-1778104595665849371?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/1778104595665849371/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=1778104595665849371' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/1778104595665849371'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/1778104595665849371'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2009/01/ajax-sayfalarnda-ge-yklenme-ilemleri.html' title='AJAX Sayfalarında Geç Yüklenme İşlemleri'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_657dzC0AiLc/SXxvCaxGIpI/AAAAAAAAAPs/DHWXHa0knec/s72-c/ajax-delay-loading_thumb%5B2%5D.gif?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-1009810551560018559</id><published>2009-01-15T01:09:00.000+02:00</published><updated>2009-01-15T01:17:23.405+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='asp.net'/><title type='text'>Response.Redirect() ile Yönlendirilecek Sayfayı Yeni Pencerede Açmak</title><content type='html'>&lt;p&gt;Bundan 3-4 yıl kadar &amp;#246;nce sunucu tarafında yapacağım sayfa y&amp;#246;nlendirmesini yeni sayfada a&amp;#231;ma işlemini ger&amp;#231;ekleştirmek i&amp;#231;in bir hayli araştırma yapmış ama sonucuna ulaşamamıştım. Aslında o kadar da zor değilmiş! Bazı durumlarda code-behind tarafında yazacağımız kodların i&amp;#231;erisinde &lt;strong&gt;Response.Redirect&lt;/strong&gt; metodunu kullanarak belirli bir sayfaya y&amp;#246;nlendirme yapabiliyoruz. Peki bu y&amp;#246;nlendirme işleminde a&amp;#231;ılacak olan sayfanın, yeni bir tarayıcı penceresinde g&amp;#246;r&amp;#252;nt&amp;#252;lenmesini nasıl sağlarız? Aslında bu sorunun cevabının Response.Redirect metoduyla hi&amp;#231;bir ilgisi yok. Olay tamamen bu metodu tetikleyen kontrol &amp;#252;zerinde yapılacak bir işlemle &amp;#231;&amp;#246;z&amp;#252;lebiliyor. &amp;#214;rneğin y&amp;#246;nlendirmeyi Button kontrol&amp;#252; ger&amp;#231;ekleştirecek ise aşağıdaki kodlar işimizi g&amp;#246;recektir. Bu arada butonun &lt;strong&gt;form1&lt;/strong&gt; adındaki form elementi i&amp;#231;erisinde yer alması gerektiğini s&amp;#246;ylememe gerek yoktur sanırım :)&lt;/p&gt;  &lt;div style="font-family: consolas, courier new; background: white; color: black; font-size: 10pt"&gt;   &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;Button&lt;/span&gt; &lt;span style="color: red"&gt;ID&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;Button1&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;runat&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;OnClick&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;Button1_Click&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;Text&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;Tıkla Bakalım&amp;quot; &lt;/span&gt;&lt;strong&gt;&lt;span style="color: red"&gt;OnClientClick&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;form1.target='_blank';&amp;quot;&lt;/span&gt;&lt;/strong&gt; &lt;span style="color: blue"&gt;/&amp;gt;&lt;/span&gt;&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;Button'ın Click olay metoduna standart Redirect metodumuzu yazmak yeterli olacaktır.&lt;/p&gt;  &lt;div style="font-family: consolas, courier new; background: white; color: black; font-size: 10pt"&gt;   &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;protected&lt;/span&gt; &lt;span style="color: blue"&gt;void&lt;/span&gt; Button1_Click(&lt;span style="color: blue"&gt;object&lt;/span&gt; sender, &lt;span style="color: #2b91af"&gt;EventArgs&lt;/span&gt; e)&lt;/p&gt;    &lt;p style="margin: 0px"&gt;{&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160; Response.Redirect(&lt;span style="color: #a31515"&gt;&amp;quot;Default.aspx&amp;quot;&lt;/span&gt;);&lt;/p&gt;    &lt;p style="margin: 0px"&gt;}&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;Peki işleyiş nasıl? Button i&amp;#231;erisinde eklediğimiz ve client tarafında &amp;#231;alışan &lt;strong&gt;form1.target='_blank'&lt;/strong&gt; ifadesi butona tıklandığında işleyişi yeni bir pencereye devrediyor. Dolayısıyla a&amp;#231;ılan yeni pencere &amp;#252;zerinde sayfa postback oluyor ve Default.aspx sayfasına y&amp;#246;nlendirme yapılıyor.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-1009810551560018559?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/1009810551560018559/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=1009810551560018559' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/1009810551560018559'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/1009810551560018559'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2009/01/responseredirect-ile-ynlendirilecek.html' title='Response.Redirect() ile Yönlendirilecek Sayfayı Yeni Pencerede Açmak'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-4715221957067999421</id><published>2009-01-08T22:43:00.001+02:00</published><updated>2009-01-08T23:05:33.749+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='haberler'/><category scheme='http://www.blogger.com/atom/ns#' term='seminer'/><title type='text'>Ege ve Yaşar Üniversitesi Seminerleri Ardından</title><content type='html'>&lt;p&gt;Dün &lt;strong&gt;Gençsen Geleceksin&lt;/strong&gt; seminerleri için &lt;strong&gt;İzmir&lt;/strong&gt;'deydim. &lt;strong&gt;Yaşar&lt;/strong&gt; ve &lt;strong&gt;Ege Üniversitesi&lt;/strong&gt;'nde gerçekleştirdiğim iki seminer ile koşturmaca dolu, heyecanlı ve oldukça güzel bir gün geçirdim. Dizüstü bilgisayarımın son zamanlarda projektörlerle anlaşmaya pek yanaşmaması, bana her iki üniversitede de zor dakikalar yaşattı:)&lt;/p&gt;&lt;p&gt;Günün erken saatlerinde &lt;strong&gt;İzmir&lt;/strong&gt;'e inerek &lt;strong&gt;Yaşar Üniversitesi&lt;/strong&gt;'ne geldim. Yaşar Üniversitesi'nin &lt;strong&gt;Bornova&lt;/strong&gt;'daki kampüsü bugüne kadar gördüğüm en modern kampüstü diyebilirim. Konumu, yolları, çevre düzenlemeleri, binaları, derslikleri... gerçekten hepsi harikaydı. Yaşar Üniversitesi'ni bizim için farklı kılan durumlardan birisi de seminere katılan akademisyenlerin çokluğuydu. Seminere katılan öğretim görevlilerinin anlattıklarımızı en az öğrenciler kadar dikkatli bir şekilde dinlemesi bizi oldukça memnun etti. Gerek öğrencilerden, gerekse akademisyenlerden aldığımız pozitif elektrik bizi günün ikinci seminerine daha da motive olmuş şekilde çıkardı.&lt;/p&gt;&lt;p&gt;&lt;a href="http://lh4.ggpht.com/_657dzC0AiLc/SWZl4agIRxI/AAAAAAAAAPY/Zh-SG3C1GyU/s1600-h/yasar_universitesi%5B4%5D.jpg"&gt;&lt;img style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height="246" alt="yasar_universitesi" src="http://lh3.ggpht.com/_657dzC0AiLc/SWZl5j-mjLI/AAAAAAAAAPc/80j3-pzND3s/yasar_universitesi_thumb%5B2%5D.jpg?imgmax=800" width="520" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;em&gt;İzmir Yaşar Üniversitesi'nden günün hatıra fotoğrafı&lt;/em&gt; &lt;/p&gt;&lt;p&gt;Öğleden sonra ise &lt;strong&gt;Ege Üniversitesi&lt;/strong&gt;'ndeydim. Yine oldukça kalabalık bir katılımcı kitlesine Microsoft'un yakın gelecekteki yazılım teknolojileriyle ilgili konuşma yapma şansı buldum. Ege Üniversitesi öğrencilerinin sektörü yakından takip ediyor olmalarına ve de, ve deee soru sorma potansiyellerine hayran kaldım diyebilirim. Sanırım süre sıkıntımız olmasaydı salondaki öğrencilerin üçte biri soru sorma şansı bulacaktı :)&lt;/p&gt;&lt;p&gt;&lt;a href="http://lh4.ggpht.com/_657dzC0AiLc/SWZl6kB73PI/AAAAAAAAAPg/TW98fAi6e0Q/s1600-h/ege_uni%5B4%5D.jpg"&gt;&lt;img style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height="291" alt="ege_uni" src="http://lh3.ggpht.com/_657dzC0AiLc/SWZl7fxffvI/AAAAAAAAAPk/ckbQv94_jIA/ege_uni_thumb%5B2%5D.jpg?imgmax=800" width="520" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;em&gt;Ege Üniversitesi'nden günün hatıra fotoğrafı&lt;/em&gt; &lt;/p&gt;&lt;p&gt;Yorucu, ama bir o kadar keyifli bir günün akşamında ise İstanbul'a dönüş yaptım. Bu güzel gün için Yaşar ve Ege Üniversitesi öğrencilerine, akademisyenlere ve &lt;strong&gt;Turkcell&lt;/strong&gt; adına etkinliğe konuşmacı olarak katılan arkadaşım &lt;strong&gt;Serdar Şimşek&lt;/strong&gt;'e teşekkürlerimi sunuyorum. Yine etkinliklerin başarıyla gerçekleşmesi için emek harcayan &lt;strong&gt;MSP Okan İncecikli&lt;/strong&gt; ve &lt;strong&gt;Can Bozdoğan&lt;/strong&gt;'a teşekkür ederim.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-4715221957067999421?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/4715221957067999421/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=4715221957067999421' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/4715221957067999421'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/4715221957067999421'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2009/01/ege-ve-yaar-niversitesi-seminerleri.html' title='Ege ve Yaşar Üniversitesi Seminerleri Ardından'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_657dzC0AiLc/SWZl5j-mjLI/AAAAAAAAAPc/80j3-pzND3s/s72-c/yasar_universitesi_thumb%5B2%5D.jpg?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-4721155167221875845</id><published>2009-01-05T23:17:00.000+02:00</published><updated>2009-01-05T23:18:02.551+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='kişisel'/><category scheme='http://www.blogger.com/atom/ns#' term='haberler'/><title type='text'>Yeni Yılda Blogumda Yenilikler</title><content type='html'>&lt;p&gt;Yeni yılla birlikte bloguma birka&amp;#231; yenilik ekledim. &lt;/p&gt;  &lt;p&gt;Bu yeniliklerden biri, artık blogumdaki teknik i&amp;#231;erikli yazılarımı -eşimin de yardımlarıyla- &lt;strong&gt;İngilizce&lt;/strong&gt; olarak da yayınlamam. Hatta bu yazılar farklı bir blog olarak karşınıza &amp;#231;ıkıyor: &lt;strong&gt;&lt;a href="http://www.umutluoglu.com/english" target="_blank"&gt;www.umutluoglu.com/english&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Diğer bir yenilik ise, artık ger&amp;#231;ekleştireceğim seminer, webiner, workshop gibi etkinlikleri blog sitemden takip edebilir, hatta RSS listelerinize ekleyebilirsiniz. Etkinlik takvimi eklentim şu an sitemin sağ kısmında &lt;strong&gt;Seminer Programım&lt;/strong&gt; başlığı altında yer alıyor. Dilerseniz &lt;strong&gt;&lt;a href="http://www.umutluoglu.com/Takvim.ashx" target="_blank"&gt;bu linkten&lt;/a&gt; &lt;/strong&gt;de ger&amp;#231;ekleştireceğim etkinlikleri RSS okuyucularınıza kaydedebilirsiniz.&lt;/p&gt;  &lt;p&gt;Aslında en &amp;#246;nemli yenilik artık blog yazılarımı &lt;a href="http://www.umutluoglu.com"&gt;&lt;strong&gt;www.umutluoglu.com&lt;/strong&gt;&lt;/a&gt; adresine taşımam sanırım. Hen&amp;#252;z bu adresteki &amp;#231;alışmalarım tamamlanmadığı i&amp;#231;in blogspot'a bir s&amp;#252;re daha eş zamanlı olarak yazmaya devam edeceğim. Anlaşılacağı &amp;#252;zere, yakında yazılarımı sadece &lt;a href="http://www.umutluoglu.com"&gt;www.umutluoglu.com&lt;/a&gt; adresinden takip edebileceksiniz :)&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-4721155167221875845?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/4721155167221875845/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=4721155167221875845' title='3 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/4721155167221875845'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/4721155167221875845'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2009/01/yeni-ylda-blogumda-yenilikler.html' title='Yeni Yılda Blogumda Yenilikler'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-4648352182635541219</id><published>2009-01-04T17:34:00.000+02:00</published><updated>2009-01-04T17:42:51.607+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='webiner'/><category scheme='http://www.blogger.com/atom/ns#' term='haberler'/><category scheme='http://www.blogger.com/atom/ns#' term='nedirtv'/><title type='text'>nedirtv?com - Ocak Ayı Webinerleri</title><content type='html'>&lt;p&gt;&lt;a href="http://lh5.ggpht.com/_657dzC0AiLc/SWDY-M9QMkI/AAAAAAAAAPQ/q6CJEfozVF8/s1600-h/nedirtv_webinerleri%5B4%5D.gif"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; margin: 0px 5px 5px 0px; border-right-width: 0px" height="95" alt="nedirtv?com Webinerleri" src="http://lh6.ggpht.com/_657dzC0AiLc/SWDY-o5jk4I/AAAAAAAAAPU/bsYAeE5zpjw/nedirtv_webinerleri_thumb%5B2%5D.gif?imgmax=800" width="140" align="left" border="0" /&gt;&lt;/a&gt;&lt;strong&gt;nedirtv?com&lt;/strong&gt; ve &lt;strong&gt;Ineta T&amp;#252;rkiye&lt;/strong&gt; olarak d&amp;#252;zenli şekilde ger&amp;#231;ekleştirmeyi planladığımız aylık webinerlere Ocak ayı itibariyle başlıyoruz. Ocak ayı i&amp;#231;erisinde 8 farklı webiner ile nedirtv?com edit&amp;#246;rleri sizlerle olacak. Webinerler &lt;u&gt;bu ay&lt;/u&gt; i&amp;#231;in ge&amp;#231;erli olmak &amp;#252;zere her Pazartesi ve &amp;#199;arşamba akşamı 21:00-22:00 saatleri arasında ger&amp;#231;ekleştirilecektir. &lt;strong&gt;Visual Studio 2008, Expression Media, C# 3.0, SharePoint, WCF, LINQ to SQL, Ado.Net Data Services&lt;/strong&gt; ve &lt;strong&gt;MOSS Development&lt;/strong&gt; konularında ger&amp;#231;ekleştirilecek oturumları ka&amp;#231;ırmamanızı tavsiye ediyorum. Detaylı bilgi ve katılım bilgileri i&amp;#231;in &lt;strong&gt;&lt;a href="http://www.nedirtv.com/haber/nedirtvcom---Ocak-Ayi-Webinerleri.aspx" target="_blank"&gt;bu adresteki&lt;/a&gt;&lt;/strong&gt; haberi okuyabilirsiniz. Yine ger&amp;#231;ekleştirilecek webinerlerle ilgili duyuru ve hatırlatmaları takip etmek i&amp;#231;in &lt;strong&gt;&lt;a href="http://www.facebook.com/event.php?eid=67465922984" target="_blank"&gt;bu adresten&lt;/a&gt;&lt;/strong&gt; etkinliği ajandanıza ekleyebilirsiniz.&lt;/p&gt;  &lt;p&gt;Bu arada webiner konusunda bir a&amp;#231;ıklama yapma zorunluluğu hissediyorum:) Zira bir&amp;#231;ok kişi webineri bir salonda, bir sınıfta ger&amp;#231;ekleştirilecek seminer olarak d&amp;#252;ş&amp;#252;n&amp;#252;yor. Nedirtv'de bu ayki webinerlerin duyurusunu yaptıktan sonra birka&amp;#231; kişiden &lt;em&gt;&amp;quot;Hocam biz İstanbul dışında oturuyoruz gelip izleme şansımız yok&amp;quot;&lt;/em&gt; şeklinde şikayetler geldi:) &lt;strong&gt;Webiner&lt;/strong&gt;; web &amp;#252;zerinden ger&amp;#231;ekleştirilen &amp;#231;evrimi&amp;#231;i seminerdir. Yani webinerlere katılmak i&amp;#231;in internet bağlantınızın olması ve bilgisayarınıza Live Meeting'i bir defalığına kurmanız yeterlidir. T&amp;#252;rkiye'nin, hatta d&amp;#252;nyanın neresinde olursanız olun internet bağlantınız olan bir bilgisayardan bu etkinliğe interaktif şekilde katılmanız m&amp;#252;mk&amp;#252;n. Webinerlere sadece izleyici olarak katılmıyor, aynı zamanda konuşmacılara sorular y&amp;#246;neltip aklınıza takılan hususlarda bilgi alabilmeniz m&amp;#252;mk&amp;#252;n oluyor. Kabaca bir tabirle &lt;em&gt;bildiğimiz seminerin online ortamda olanı&lt;/em&gt; diyebiliriz webinerlere :)&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-4648352182635541219?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/4648352182635541219/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=4648352182635541219' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/4648352182635541219'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/4648352182635541219'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2009/01/nedirtvcom-ocak-ay-webinerleri.html' title='nedirtv?com - Ocak Ayı Webinerleri'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_657dzC0AiLc/SWDY-o5jk4I/AAAAAAAAAPU/bsYAeE5zpjw/s72-c/nedirtv_webinerleri_thumb%5B2%5D.gif?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-1121169646184219090</id><published>2009-01-01T15:01:00.001+02:00</published><updated>2009-01-01T15:35:08.411+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MS Access'/><category scheme='http://www.blogger.com/atom/ns#' term='veri kontrolleri'/><title type='text'>"You tried to assign the Null value..." Hatası ve Çözümü</title><content type='html'>&lt;p&gt;&lt;strong&gt;MS Access&lt;/strong&gt;'te hazırladığınız bir tabloyu &lt;strong&gt;AccessDataSource&lt;/strong&gt; kontrolü ile Insert işlemlerinde kullandığınızda &lt;strong&gt;"You tried to assign the Null value to a variable that is not a Variant data type"&lt;/strong&gt; şeklinde bir hatayla karşılaşabilirsiniz. Ben null değer girişi yapmadım ki böyle bir hata alıyorum demeyin, zira sorun sizden değil Visual Studio'nun Insert cümlenize tablonuzun identity kolonunu veri eklenecek kolonmuş gibi eklenmesinden kaynaklanıyor! Çözüm ise oldukça basit; sayfanızın HTML kodları içerisinde AccessDataSource kontrolünüzün &lt;strong&gt;InsertCommand&lt;/strong&gt; özelliğinden identity kolonunuzun(ki genellikle primary key kolonunuz olur) adını ve parametresini (VALUES kısmındaki ? karakterini) kaldırmanız gerekiyor. Ardından&lt;br /&gt;&lt;strong&gt;InsertParameters&lt;/strong&gt; koleksiyonundan yine bu kolon için eklenmiş olan parametreyi de kaldıracak olursanız artık Insert işlemini başarılı bir şekilde gerçekleştirebilirsiniz.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-1121169646184219090?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/1121169646184219090/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=1121169646184219090' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/1121169646184219090'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/1121169646184219090'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2009/01/tried-to-assign-null-value-hatas-ve-zm.html' title='&amp;quot;You tried to assign the Null value...&amp;quot; Hatası ve Çözümü'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-7178321425818656267</id><published>2008-12-24T12:04:00.001+02:00</published><updated>2008-12-24T12:26:19.688+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='haberler'/><category scheme='http://www.blogger.com/atom/ns#' term='seminer'/><title type='text'>MSP Türkiye Ekibi Teknoloji Meraklıları ile Buluşuyor</title><content type='html'>&lt;p&gt;&lt;strong&gt;Microsoft Student Partner T&amp;#252;rkiye&lt;/strong&gt; ekibi bu hafta sonu &amp;#199;ankaya &amp;#220;niversitesi'nde ger&amp;#231;ekleştirilecek s&amp;#252;per bir etkinlikle teknolojistleri ağırlayacak. &lt;strong&gt;MSP Days&lt;/strong&gt; olarak adlandırdıkları bu etkinlikte bir&amp;#231;ok sunum olacak ve yeni teknolojiler tanıtılacak. &amp;#214;zellikle Ankaralı teknoloji meraklılarının ilgisini &amp;#231;ekeceğini d&amp;#252;ş&amp;#252;n&amp;#252;yorum. Detaylı bilgileri &lt;a href="http://www.mspdays.com" target="_blank"&gt;www.mspdays.com&lt;/a&gt; adresinden alabilirsiniz.&lt;/p&gt;  &lt;p&gt;T&amp;#252;m MSP arkadaşları buradan tebrik ediyorum. Ger&amp;#231;ekten de önemli bir işin altına imza atacaklar b&amp;#246;yle b&amp;#252;y&amp;#252;k bir etkinliği ger&amp;#231;ekleştirerek.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-7178321425818656267?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/7178321425818656267/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=7178321425818656267' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/7178321425818656267'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/7178321425818656267'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/12/msp-trkiye-ekibi-teknoloji-merakllar.html' title='MSP Türkiye Ekibi Teknoloji Meraklıları ile Buluşuyor'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-1793597162292701279</id><published>2008-12-23T23:52:00.001+02:00</published><updated>2008-12-23T23:59:55.882+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='seminer'/><title type='text'>Boğaziçi Üniversitesi'ndeydim</title><content type='html'>&lt;p&gt;&lt;strong&gt;Gen&amp;#231;sen Geleceksin 2.0 T&amp;#252;rkiye Turu&lt;/strong&gt; kapsamında bug&amp;#252;n &lt;strong&gt;Boğazi&amp;#231;i &amp;#220;niversitesi&lt;/strong&gt;'ndeydim. Microsoft adına yakın geleceğin yazılım teknolojileri &amp;#252;zerine konuştuğum seminer diğer Gen&amp;#231;sen Geleceksin etkinlikleri gibi olduk&amp;#231;a renkli ge&amp;#231;ti. Tabi s&amp;#252;re yeterli olmadığı i&amp;#231;in yine sunumun son kısımlarını &amp;#231;ok hızlı ge&amp;#231;mek durumunda kaldım. &amp;#214;ğrencilerin &amp;#246;zellikle &lt;em&gt;cloud computing&lt;/em&gt; ve &lt;em&gt;Windows Azure&lt;/em&gt; ile yakından ilgilenmeleri ve beni soru yağmuruna tutmaları bu etkinliğin ilgin&amp;#231; y&amp;#246;nlerinden biriydi. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_657dzC0AiLc/SVFesfOinLI/AAAAAAAAAPI/o3oqZhCNI-U/s1600-h/bogazici_gg20_seminer%5B4%5D.jpg"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="248" alt="Boğazi&amp;#231;i &amp;#220;niversitesi - Gen&amp;#231;sen Geleceksin 2.0 Semineri" src="http://lh5.ggpht.com/_657dzC0AiLc/SVFethLd_GI/AAAAAAAAAPM/sNI8WBQQL0c/bogazici_gg20_seminer_thumb%5B2%5D.jpg?imgmax=800" width="502" border="0" /&gt;&lt;/a&gt;     &lt;br /&gt;&lt;em&gt;Etkinlik sonrasında bazı katılımcılarla &amp;#231;ekildiğimiz g&amp;#252;n&amp;#252;n hatıra fotoğrafı&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;Etkinlikte emeği ge&amp;#231;en başta &lt;strong&gt;Ege Akpınar&lt;/strong&gt; ve diğer &lt;strong&gt;MSP arkadaşlara&lt;/strong&gt;, &lt;strong&gt;Boğazi&amp;#231;i COMPEC(Bilişim Kul&amp;#252;b&amp;#252;)&lt;/strong&gt;'teki arkadaşlarıma teşekk&amp;#252;rlerimi sunuyorum. Yarın İstanbul &amp;#220;niversitesi'nde C# Workshop etkinliğinde olacağım. Yeni izlenimlerimi yarında blogumda paylaşmak umuduyla&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-1793597162292701279?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/1793597162292701279/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=1793597162292701279' title='2 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/1793597162292701279'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/1793597162292701279'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/12/boazii-niversitesi.html' title='Boğaziçi Üniversitesi&amp;#39;ndeydim'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_657dzC0AiLc/SVFethLd_GI/AAAAAAAAAPM/sNI8WBQQL0c/s72-c/bogazici_gg20_seminer_thumb%5B2%5D.jpg?imgmax=800' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-4875361716039034701</id><published>2008-12-22T22:37:00.000+02:00</published><updated>2008-12-22T22:38:12.682+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='haberler'/><title type='text'>Windows Ürünlerinin Kod İsimleri</title><content type='html'>&lt;p&gt;Bildiğiniz gibi &lt;strong&gt;Microsoft&lt;/strong&gt; &amp;#231;ıkaracağı bir&amp;#231;ok &amp;#252;r&amp;#252;n&amp;#252; daha beta aşamasındayken belirli kod isimleri(codename) vererek duyurmakta ve bizi gelecekteki yeniliklere &amp;#231;ok erkenden ısındırmakta. Birka&amp;#231; tane codename sayın desem aklınıza ilk hangileri gelir acaba? &lt;em&gt;Whidbey, Orcas, Yukon, Longhorn vb&lt;/em&gt;...&lt;/p&gt;  &lt;p&gt;Wikipedia'da karşılaştığım bir linke bakınca aslında Microsoft'un ge&amp;#231;mişten beri codename'i ciddi bir standart halinde kullandığını g&amp;#246;rd&amp;#252;m. &lt;strong&gt;&lt;a href="http://en.wikipedia.org/wiki/Microsoft_codenames" target="_blank"&gt;Bu sayfadan&lt;/a&gt;&lt;/strong&gt; hem codename ge&amp;#231;mişine g&amp;#246;z atabilir, hem de kısaca zamanda yolculuk yaparak nereden nereye gelmişiz g&amp;#246;rebilirsiniz. Nerede Windows 3.1, nerede Windows Vista :)&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-4875361716039034701?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/4875361716039034701/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=4875361716039034701' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/4875361716039034701'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/4875361716039034701'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/12/windows-rnlerinin-kod-isimleri.html' title='Windows Ürünlerinin Kod İsimleri'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-5234162337159441144</id><published>2008-12-20T02:07:00.001+02:00</published><updated>2008-12-20T08:51:23.946+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WPF'/><title type='text'>WPF Uygulamalarında DocumentViewer ile XPS Dokümanlarının Görüntülenmesi</title><content type='html'>&lt;p&gt;&lt;strong&gt;XPS,&lt;/strong&gt; Windows Vista ile birlikte kullanımı gittik&amp;#231;e yaygınlaşan bir dosya formatı. Word, Excel, Powerpoint dosyalarını XPS formatına &amp;#231;evirerek Office kurulu olmayan bir bilgisayarda dahi &lt;strong&gt;Internet Explorer 7&lt;/strong&gt; gibi bir tarayıcı &amp;#252;zerinde g&amp;#246;r&amp;#252;nt&amp;#252;leyebiliyoruz. Bu yazıda kullanımı yaygınlaşan XPS formatınındaki dosyaları &lt;strong&gt;WPF(Windows Presentation Foundation)&lt;/strong&gt; uygulamalarında &lt;strong&gt;DocumentViewer&lt;/strong&gt; kontrol&amp;#252;yle nasıl g&amp;#246;r&amp;#252;nt&amp;#252;leyebileceğimizi anlatmaya &amp;#231;alışacağım.&lt;/p&gt;  &lt;p&gt;WPF ile gelen kontrollerimizden olan DocumentView &amp;#252;zerinde bir XPS dosyası g&amp;#246;r&amp;#252;nt&amp;#252;leyebilmek i&amp;#231;in &lt;strong&gt;XpsDocument&lt;/strong&gt; tipinden bir nesneye ihtiyacımız olacaktır. mscorlib.dll'de bulunmayan bu sınıf i&amp;#231;in &lt;strong&gt;ReachFramework.dll&lt;/strong&gt;'i projemize eklememiz gerekiyor. &lt;/p&gt;  &lt;p&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="333" alt="ReachFramework.dll'in Add Reference seçeneğinden seçilmesi" src="http://lh6.ggpht.com/_657dzC0AiLc/SUwn7BVxBII/AAAAAAAAAO8/xmp66HnYOtk/reachframework-secim_thumb%5B2%5D.gif?imgmax=800" width="421" border="0" /&gt;&lt;br /&gt;ReachFramework.dll'in proje referanslarına eklenmesi&lt;/p&gt;  &lt;p&gt;İlgili dll dosyasını projemizin referanslarına ekledikten sonra artık uygulamamıza ge&amp;#231;ebiliriz. Yapacağımız işlem olduk&amp;#231;a basit aslında; penceremize bir tane DocumentViewer kontrol&amp;#252; ekliyor ve pencerenin &lt;strong&gt;Loaded&lt;/strong&gt; event'ine aşağıda g&amp;#246;rd&amp;#252;ğ&amp;#252;n&amp;#252;z iki satırlık ifadeyi ekliyoruz.&lt;/p&gt; &lt;strong&gt;Window1.xaml&lt;/strong&gt;   &lt;div style="font-size: 10pt; background: white; color: black; font-family: consolas, courier new"&gt;   &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;Window&lt;/span&gt;&lt;span style="color: red"&gt; x&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: red"&gt;Class&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;WpfDocumentViewerXps.Window1&amp;quot;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160; &lt;span style="color: red"&gt;xmlns&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;http://schemas.microsoft.com/winfx/2006/xaml/presentation&amp;quot;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160; &lt;span style="color: red"&gt;xmlns&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: red"&gt;x&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;http://schemas.microsoft.com/winfx/2006/xaml&amp;quot;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160; &lt;span style="color: red"&gt;Title&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;DocumentViewer ile XPS Dosyalarının G&amp;#246;r&amp;#252;nt&amp;#252;lemesi&amp;quot;&lt;/span&gt;&lt;span style="color: red"&gt; Height&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;320&amp;quot;&lt;/span&gt;&lt;span style="color: red"&gt; Width&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;600&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;span style="color: #a31515"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;Grid&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;span style="color: #a31515"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;DocumentViewer&lt;/span&gt;&lt;span style="color: red"&gt; Name&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;documentViewer1&amp;quot; /&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;span style="color: #a31515"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;Grid&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;Window&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt; &lt;/div&gt; &lt;strong&gt;Window1.xaml.cs&lt;/strong&gt;   &lt;div style="font-size: 10pt; background: white; color: black; font-family: consolas, courier new"&gt;   &lt;p style="margin: 0px"&gt;...&lt;/p&gt;    &lt;div style="font-size: 10pt; background: white; color: black; font-family: consolas, courier new"&gt;     &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;using&lt;/span&gt; System.Windows.Xps.Packaging; &lt;span style="color: green"&gt;//Gerekli isim alanı&lt;/span&gt;&lt;/p&gt;      &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;namespace&lt;/span&gt; WpfDocumentViewerXps&lt;/p&gt;      &lt;p style="margin: 0px"&gt;{&lt;/p&gt;      &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;public&lt;/span&gt; &lt;span style="color: blue"&gt;partial&lt;/span&gt; &lt;span style="color: blue"&gt;class&lt;/span&gt; &lt;span style="color: #2b91af"&gt;Window1&lt;/span&gt; : &lt;span style="color: #2b91af"&gt;Window&lt;/span&gt;&lt;/p&gt;      &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160; {&lt;/p&gt;      &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;public&lt;/span&gt; Window1()&lt;/p&gt;      &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {&lt;/p&gt;      &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; InitializeComponent();&lt;/p&gt;      &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }&lt;/p&gt;      &lt;p style="margin: 0px"&gt;&amp;#160;&lt;/p&gt;      &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;private&lt;/span&gt; &lt;span style="color: blue"&gt;void&lt;/span&gt; Window_Loaded(&lt;span style="color: blue"&gt;object&lt;/span&gt; sender, &lt;span style="color: #2b91af"&gt;RoutedEventArgs&lt;/span&gt; e)&lt;/p&gt;      &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {&lt;/p&gt;      &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: green"&gt;//XpsDocument nesnesi belirtilen yoldaki dosya i&amp;#231;eriğini&lt;/span&gt;&lt;/p&gt;      &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: green"&gt;//GetFixedDocumentSequence metodu ile kontrol&amp;#252;m&amp;#252;ze sunacaktır&lt;/span&gt;&lt;/p&gt;      &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: #2b91af"&gt;XpsDocument&lt;/span&gt; xps = &lt;span style="color: blue"&gt;new&lt;/span&gt; &lt;span style="color: #2b91af"&gt;XpsDocument&lt;/span&gt;(&lt;span style="color: #a31515"&gt;@&amp;quot;D:\test.xps&amp;quot;&lt;/span&gt;, System.IO.&lt;span style="color: #2b91af"&gt;FileAccess&lt;/span&gt;.Read);&lt;/p&gt;      &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; documentViewer1.Document = xps.GetFixedDocumentSequence();&lt;/p&gt;      &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }&lt;/p&gt;      &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160; }&lt;/p&gt;      &lt;p style="margin: 0px"&gt;}&lt;/p&gt;   &lt;/div&gt;    &lt;p style="margin: 0px"&gt;&lt;/p&gt; &lt;/div&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="359" alt="DocumentViewer ile XPS dokümanını görüntüledik" src="http://lh3.ggpht.com/_657dzC0AiLc/SUw3abE5iTI/AAAAAAAAAPE/a3RNco7FgH0/documentviewer-uygulama_thumb%5B2%5D.png?imgmax=800" width="632" border="0" /&gt; &lt;br /&gt;DocumentView'da g&amp;#246;r&amp;#252;nt&amp;#252;lenen XPS dok&amp;#252;manı&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-5234162337159441144?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/5234162337159441144/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=5234162337159441144' title='2 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/5234162337159441144'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/5234162337159441144'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/12/wpf-uygulamalarnda-documentviewer-ile.html' title='WPF Uygulamalarında DocumentViewer ile XPS Dokümanlarının Görüntülenmesi'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_657dzC0AiLc/SUwn7BVxBII/AAAAAAAAAO8/xmp66HnYOtk/s72-c/reachframework-secim_thumb%5B2%5D.gif?imgmax=800' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-687735363459743910</id><published>2008-12-14T18:25:00.003+02:00</published><updated>2009-01-04T17:58:46.605+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='haberler'/><category scheme='http://www.blogger.com/atom/ns#' term='nedirtv'/><title type='text'>Widgetlar ile nedirtv?com İçeriklerini Websitenizde Yayınlayın</title><content type='html'>&lt;p&gt;&lt;a href="http://lh5.ggpht.com/_657dzC0AiLc/SUUzY6AAKiI/AAAAAAAAAOw/X_1IKvGnGJU/s1600-h/nedirtv-widget%5B10%5D.png"&gt;&lt;img style="BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; MARGIN: 0px 10px 0px 0px; BORDER-RIGHT-WIDTH: 0px" height="241" alt="nedirtv?com Widget" src="http://lh5.ggpht.com/_657dzC0AiLc/SUUzZ4H4eqI/AAAAAAAAAO0/_VRoohXuQVI/nedirtv-widget_thumb%5B6%5D.png?imgmax=800" width="241" align="left" border="0" /&gt;&lt;/a&gt;nedirtv'nin 2.0 versiyonu üzerinde çalışmalarımız devam ederken sizlere önemli yeniliklerimizden birini tanıtmak istedim: &lt;strong&gt;&lt;a href="http://www.nedirtv.com/Widgets.aspx" target="_blank"&gt;nedirtv?com Widget&lt;/a&gt;&lt;/strong&gt;. Basit olarak belirli bir nedirtv içeriğini websitenizde, blog sitenizde yayınlayabilmenizi amaçladığımız bu eklenti aslında benim blogumda uzun zamandır da yayında(Sağ kısımda görebilirsiniz). Şimdilik &lt;strong&gt;kategori&lt;/strong&gt; ve &lt;strong&gt;editör&lt;/strong&gt; seçeneklerinde oluşturulabilen widgetlar ile seçilen kategoriye veya editöre ait son videolar listesini sitenizde yayınlayabilirsiniz. Editör seçeneğinin daha ziyade editörlere hitap ettiğini düşünecek olursak, aslında ziyaretçilerinize sunmak istediğiniz kategoriye göre widget'lar oluşturmak dikkatinizi çekecektir diye tahmin ediyorum. Gelelim widget'ı sitenize nasıl ekleyeceğinize; &lt;/p&gt;&lt;p&gt;- &lt;a href="http://www.nedirtv.com/Widgets.aspx" target="_blank"&gt;Widget sayfası&lt;/a&gt;ndan istediğiniz kategoriyi veya editörü seçin ve ardından &lt;strong&gt;Widget Oluştur&lt;/strong&gt; butonuna tıklayın.&lt;/p&gt;&lt;p&gt;- Oluşan widgetın önizlemesini sayfanın sağ kısmında görebilirsiniz. &lt;strong&gt;Kaynak Kod&lt;/strong&gt; kutusunda yer alan kodları sitenizde görüntülenmesini istediğiniz yere ekleyin. Bu kadar :)&lt;/p&gt;&lt;p&gt;nedirtv'yi izlemeye devam edin :)&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-687735363459743910?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/687735363459743910/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=687735363459743910' title='2 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/687735363459743910'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/687735363459743910'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/12/widgetlar-ile-nedirtvcom-ieriklerini.html' title='Widgetlar ile nedirtv?com İçeriklerini Websitenizde Yayınlayın'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_657dzC0AiLc/SUUzZ4H4eqI/AAAAAAAAAO0/_VRoohXuQVI/s72-c/nedirtv-widget_thumb%5B6%5D.png?imgmax=800' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-263044562923041635</id><published>2008-12-11T09:57:00.003+02:00</published><updated>2008-12-14T10:15:59.271+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='asp.net'/><category scheme='http://www.blogger.com/atom/ns#' term='veri kontrolleri'/><title type='text'>Veri Kaynağı Olan DropDownList'e Item Ekleme</title><content type='html'>&lt;p&gt;&lt;strong&gt;DropDownList&lt;/strong&gt; kontrol&amp;#252;ne veritabanından getirilen kayıtları y&amp;#252;klememiz durumunda &amp;#231;oğu zaman ilk se&amp;#231;eneğin kullanıcıyı bilgilendirecek bir metin olmasını isteriz. &lt;em&gt;&amp;quot;Bir şehir se&amp;#231;in&amp;quot;&lt;/em&gt;, &lt;em&gt;&amp;quot;Bir kategori se&amp;#231;in&amp;quot;...&lt;/em&gt; gibi bir se&amp;#231;eneğin ilk item olması, devamında da veritabanından gelen item'ların sıralanması eminim ki her uygulamada ihtiya&amp;#231; olan bir durumdur. Tabi ki veritabanındaki Sehirler tablosunda &amp;quot;Bir şehir se&amp;#231;in&amp;quot; diye bir kayıt eklemek mantıklı olmayacağına g&amp;#246;re farklı bir &amp;#231;&amp;#246;z&amp;#252;m yolu &amp;#252;retmek gerekli! Sorunu SQL Server tarafında &amp;#231;&amp;#246;zmek istersek &lt;strong&gt;UNION &lt;/strong&gt;ifadesi kullanılabilir. Fakat bu yazımda biraz daha farklı bir yoldan bahsetmek istiyorum. &lt;/p&gt;  &lt;p&gt;Yapacağımız işlem son derece basit ve kullanışlı bir &amp;#231;&amp;#246;z&amp;#252;m yolu olacak. İlk olarak bilgilendirme metnini DropDownList kontrol&amp;#252;ne g&amp;#246;rsel kısımdan ListItem olarak ekliyoruz. Items koleksiyonuna bilgilendirme metnini ekliyoruz. Ardından DropDownList'in &lt;strong&gt;AppendDataBoundItems&lt;/strong&gt; &amp;#246;zelliğini &lt;strong&gt;true&lt;/strong&gt; olarak değiştiriyoruz. Eklediğimiz se&amp;#231;enek artık DropDownList kontrol&amp;#252;ne item olarak eklenecektir.&lt;/p&gt;  &lt;div style="font-size: 10pt; background: white; color: black; font-family: consolas, courier new"&gt;   &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;DropDownList&lt;/span&gt; &lt;span style="color: red"&gt;ID&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;DropDownList1&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;runat&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt; &lt;strong&gt;&lt;u&gt;&lt;span style="color: red"&gt;AppendDataBoundItems&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;True&amp;quot;&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt; &lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: red"&gt;DataSourceID&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;SqlDataSource1&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;DataTextField&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;SehirAdi&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;DataValueField&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;SehirId&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;ListItem&lt;/span&gt; &lt;span style="color: red"&gt;Value&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;-1&amp;quot;&amp;gt;&lt;/span&gt;Bir şehir se&amp;#231;in&lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;ListItem&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;DropDownList&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_657dzC0AiLc/SUDHV9DVjbI/AAAAAAAAAOo/RNlgpsnkqVE/s1600-h/AppendDataBoundItems5.gif"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="142" alt="AppendDataBoundItems" src="http://lh5.ggpht.com/_657dzC0AiLc/SUDHWQgz6YI/AAAAAAAAAOs/ant92vHhj6M/AppendDataBoundItems_thumb3.gif?imgmax=800" width="126" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;UNION&lt;/strong&gt;, &lt;strong&gt;UNION ALL&lt;/strong&gt; ifadelerine alternatif olacak, aklınızda bulunması gereken bir ipucu...&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-263044562923041635?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/263044562923041635/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=263044562923041635' title='2 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/263044562923041635'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/263044562923041635'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/12/veri-kayna-olan-dropdownliste-item.html' title='Veri Kaynağı Olan DropDownList&apos;e Item Ekleme'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_657dzC0AiLc/SUDHWQgz6YI/AAAAAAAAAOs/ant92vHhj6M/s72-c/AppendDataBoundItems_thumb3.gif?imgmax=800' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-1332848986161684794</id><published>2008-12-07T10:32:00.002+02:00</published><updated>2008-12-07T10:38:42.315+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linq'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net 3.5'/><category scheme='http://www.blogger.com/atom/ns#' term='sunum'/><category scheme='http://www.blogger.com/atom/ns#' term='seminer'/><title type='text'>İstanbul Kültür Üniversitesi'ndeydim</title><content type='html'>&lt;p&gt;4 Aralık 2008 Perşembe g&amp;#252;n&amp;#252; &lt;strong&gt;İstanbul K&amp;#252;lt&amp;#252;r &amp;#220;niversitesi&lt;/strong&gt;'nde &lt;strong&gt;ASP.NET 3.5 ve LINQ&lt;/strong&gt; seminerini ger&amp;#231;ekleştirdim. Bug&amp;#252;ne kadar ki en şanssız seminerimdi diyebilirim bu etkinlik i&amp;#231;in, zira diz&amp;#252;st&amp;#252; bilgisayarımdan kaynaklanan bir problemden dolayı etkinliği maalesef saat 10.00 yerine 12.00'da başlatmak zorunda kaldık. 2 saatlik bir gecikme elbetteki kulağa hoş gelmiyor ama Visual Studio 2008 ve SQL Server 2005 kurulu bir bilgisayarı bulmak bize yaklaşık 2 saate maloldu :) 2 saat boyunca bizleri sabırla bekleyen katılımcılara buradan tekrar teşekk&amp;#252;r etmek istiyorum.&lt;/p&gt;  &lt;p&gt;İyisiyle k&amp;#246;t&amp;#252;s&amp;#252;yle ilgin&amp;#231; bir etkinlik olarak anılarımda yer aldı İstanbul K&amp;#252;lt&amp;#252;r &amp;#220;niversitesi semineri. Etkinlikte kullandığım sunum dosyasına ve &amp;#246;rnek projeye aşağıdaki linklerden ulaşabilirsiniz.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;a href="http://www.nedirtv.com/Files/etkinlikler/IKU-4Aralik2008/IKU-ASPNET-LINQ.zip" target="_blank"&gt;Proje&lt;/a&gt;&lt;/strong&gt;    &lt;br /&gt;&lt;strong&gt;&lt;a href="http://www.nedirtv.com/Files/etkinlikler/IKU-4Aralik2008/IKU-ASPNET-LINQ.ppt" target="_blank"&gt;ASP.NET 3.5 ve LINQ Sunum&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_657dzC0AiLc/STuKMUe-8NI/AAAAAAAAAOg/GPIuJoVaIKQ/s1600-h/aspnetlinq_iku%5B4%5D.jpg"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="185" alt="İstanbul K&amp;#252;lt&amp;#252;r &amp;#220;niversitesi - ASP.NET 3.5 ve LINQ Seminerinden..." src="http://lh3.ggpht.com/_657dzC0AiLc/STuKM8Y8TWI/AAAAAAAAAOk/wqowDNAnR5s/aspnetlinq_iku_thumb%5B2%5D.jpg?imgmax=800" width="259" border="0" /&gt;&lt;/a&gt;&amp;#160; &lt;br /&gt;İstanbul K&amp;#252;lt&amp;#252;r &amp;#220;niversitesi seminerinden bir kare&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-1332848986161684794?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/1332848986161684794/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=1332848986161684794' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/1332848986161684794'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/1332848986161684794'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/12/istanbul-kltr-niversitesi.html' title='İstanbul Kültür Üniversitesi&amp;#39;ndeydim'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_657dzC0AiLc/STuKM8Y8TWI/AAAAAAAAAOk/wqowDNAnR5s/s72-c/aspnetlinq_iku_thumb%5B2%5D.jpg?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-5326883002787316006</id><published>2008-12-03T10:56:00.001+02:00</published><updated>2008-12-03T11:05:26.677+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='haberler'/><category scheme='http://www.blogger.com/atom/ns#' term='seminer'/><title type='text'>Gebze Yüksek Teknoloji Enstitüsü'ndeydim</title><content type='html'>&lt;p&gt;D&amp;#252;n &lt;strong&gt;Gen&amp;#231;sen Geleceksin 2.0&lt;/strong&gt; etkinliği dahilinde &lt;strong&gt;Gebze Y&amp;#252;ksek Teknoloji Enstit&amp;#252;s&amp;#252;&lt;/strong&gt;'ndeydim. Katılımcı arkadaşlarla iki saate yakın s&amp;#252;re i&amp;#231;erisinde &lt;strong&gt;Microsoft&lt;/strong&gt;'un gelecek yazılım teknolojileri ve bu teknolojilerin oluşturacağı iş fırsatları &amp;#252;zerine konuşmalar ger&amp;#231;ekleştirdim. Sınav d&amp;#246;nemi olmasına rağmen &amp;#252;niversite &amp;#246;ğrencilerinin y&amp;#252;ksek katılım g&amp;#246;sterdiği etkinlikte, &amp;#246;ğrenciler a&amp;#231;ısından gelecekteki yazılım teknolojileri hakkında olumlu ve faydalı izlenimler bıraktığımı d&amp;#252;ş&amp;#252;n&amp;#252;yorum.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_657dzC0AiLc/STZLd9GOYgI/AAAAAAAAAOY/ehPpGHPKvXk/s1600-h/_MG_2149%5B4%5D.jpg"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="200" alt="_MG_2149" src="http://lh3.ggpht.com/_657dzC0AiLc/STZLesIyY5I/AAAAAAAAAOc/VbtXmPtGQwM/_MG_2149_thumb%5B2%5D.jpg?imgmax=800" width="300" border="0" /&gt;&lt;/a&gt;     &lt;br /&gt;Etkinlik sonrası g&amp;#252;n&amp;#252;n hatırası olarak &amp;#231;ekildiğimiz bir resim.&lt;/p&gt;  &lt;p&gt;Etkinlikte emeği ge&amp;#231;en ve organizasyonda bizlere yardımcı olan MSP &lt;strong&gt;&amp;#214;.Faruk &amp;#214;zdemir&lt;/strong&gt;'e ve &lt;strong&gt;GYTE IEEE &amp;#214;ğrenci Kolu&lt;/strong&gt;'na teşekk&amp;#252;rlerimi sunuyorum. Etkinlikle ilgili Facebook fotoğraf alb&amp;#252;m&amp;#252;ne &lt;strong&gt;&lt;a href="http://www.facebook.com/album.php?aid=48027&amp;amp;l=721bc&amp;amp;id=741492902" target="_blank"&gt;bu link&lt;/a&gt;&lt;/strong&gt; &amp;#252;zerinden erişebilirsiniz.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-5326883002787316006?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/5326883002787316006/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=5326883002787316006' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/5326883002787316006'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/5326883002787316006'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/12/gebze-yksek-teknoloji-enstits.html' title='Gebze Yüksek Teknoloji Enstitüsü&amp;#39;ndeydim'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_657dzC0AiLc/STZLesIyY5I/AAAAAAAAAOc/VbtXmPtGQwM/s72-c/_MG_2149_thumb%5B2%5D.jpg?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-7520091700356167366</id><published>2008-12-02T00:36:00.001+02:00</published><updated>2008-12-02T00:38:07.451+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='asp.net'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net 3.5'/><category scheme='http://www.blogger.com/atom/ns#' term='veri kontrolleri'/><title type='text'>ASP.NET 3.5 Chart Kontrolü - Kurulum ve İlk Grafik Raporumuz</title><content type='html'>&lt;p&gt;Veritabanında saklanılan kayıtlarla web sitelerimizde raporlama yaparken grafiksel tablolar oluşturmak en &amp;#246;nemli ihtiya&amp;#231;larımızdan birisidir. ASP.NET uygulamalarında bu tip ihtiya&amp;#231;ları gidermek i&amp;#231;in GDI+ nesnelerini kullanabileceğimiz gibi &amp;#252;&amp;#231;&amp;#252;nc&amp;#252; parti kontrollerden de faydalanabiliriz. GDI+ nesnelerinin kullanımının zorluğu ve oluşturacağımız şekillerin &amp;#231;okta g&amp;#246;ze hoş gelmeyeceğini s&amp;#246;ylemeye gerek yok sanırım. &amp;#220;&amp;#231;&amp;#252;nc&amp;#252; parti kontrollerinde &amp;#252;cretli olması, &amp;#252;cretsiz dağıtılanlarında &amp;#231;ok kullanışlı olmaması bizleri bug&amp;#252;ne kadar &amp;#231;ok zengin olmayan grafik tablolarla &amp;#231;alışmak zorunda bırakmıştır. Microsoft'un ge&amp;#231;tiğimiz g&amp;#252;nlerde kullanıma a&amp;#231;tığı &lt;b&gt;Chart&lt;/b&gt; adındaki kontrol ile herhangi bir &amp;#252;&amp;#231;&amp;#252;nc&amp;#252; parti kontrole veya GDI+ nesnelerine gerek kalmadan &amp;#231;ok hızlı şekilde m&amp;#252;kemmel grafik tablolar &amp;#252;retebilmekteyiz. Bu yazımızda Chart kontrol&amp;#252;n&amp;#252;n kurulumunu ve bu kontrol ile temel bir grafik tablosunun nasıl oluşturulabileceğini inceleyeceğiz. Aşağıdaki Chart kontrol&amp;#252;yle hazırlanmış birka&amp;#231; grafik tablo sanırım bizleri ne tarz grafikler oluşturabileceğimiz konusunda heyecanlandıracaktır!&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_657dzC0AiLc/STRh25OggCI/AAAAAAAAANw/BZX1ermXiNw/s1600-h/aspnet35-chart-ornekler%5B4%5D.gif"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="367" alt="ASP.NET 3.5 - Chart kontrol&amp;#252;n&amp;#252;n kullanımına &amp;#246;rnekler" src="http://lh3.ggpht.com/_657dzC0AiLc/STRh4J_GbdI/AAAAAAAAAN0/L4rdJs6dMP0/aspnet35-chart-ornekler_thumb%5B2%5D.gif?imgmax=800" width="506" border="0" /&gt;&lt;/a&gt;     &lt;br /&gt;&lt;b&gt;Resim&lt;/b&gt;: ASP.NET 3.5 Chart kontrol&amp;#252;yle hazırlanmış &amp;#246;rnek grafik tablolar&lt;/p&gt;  &lt;p&gt;Daha &amp;#246;nceden &lt;strong&gt;Dundas&lt;/strong&gt; isimli chart kontrolleri &amp;#252;reten firmanın hazırladığı kontrolleri inceleme fırsatınız olduysa aslında yukarıdaki grafikler size &amp;#231;okta yabancı gelmeyecektir. Zira ge&amp;#231;tiğimiz yıllarda Microsoft'un yaptığı yatırımlar sonucunda Dundas grafiklerinin Microsoft uygulamalarında &amp;#252;cretsiz şekilde kullanılması planlanıyordu. Bu yazımızda inceleyeceğimiz Chart kontrol&amp;#252; bu &amp;#231;alışmaların sonucunda .NET Framework'&amp;#252;n yapısına katılıyor. Şu an i&amp;#231;in .NET Framework'&amp;#252;n 3.5 SP1 s&amp;#252;r&amp;#252;m&amp;#252; &amp;#252;zerinde &amp;#231;alışan bu kontrol&amp;#252;n .NET Framework 4.0 ile artık mimariyle b&amp;#252;t&amp;#252;nleşik olması bekleniyor. &lt;/p&gt;  &lt;p&gt;Gelelim kontrol&amp;#252; nasıl temin edip kullanabileceğimize. Yukarıdaki paragraftanda anlaşılacağı gibi Chart kontrol&amp;#252;n&amp;#252; kullanan uygulamamız .NET Framework 3.5 SP1 &amp;#252;zerinde &amp;#231;alışıyor olmalı. Yine Visual Studio 2008'de bu kontrol&amp;#252; sorunsuz şekilde kullanmak i&amp;#231;in Visual Studio 2008 SP1'in de kurulu olması gerekiyor. Chart kontrol&amp;#252; .NET Framework 3.5 ile b&amp;#252;t&amp;#252;nleşik gelmediği i&amp;#231;in iki farklı dosyayı bilgisayarımıza indirmemiz ve kurmamız gerekecek. Bu dosyaları aşağıdaki linklerden indirebilirsiniz.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=130f7986-bf49-4fe5-9ca8-910ae6ea442c&amp;amp;DisplayLang=en"&gt;Microsoft Chart Kontrol&amp;#252;&lt;/a&gt;&lt;/b&gt;     &lt;br /&gt;&lt;b&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=1D69CE13-E1E5-4315-825C-F14D33A303E9&amp;amp;displaylang=en"&gt;Chart kontrol&amp;#252; i&amp;#231;in Visual Studio 2008 eklentisi&lt;/a&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;Yine &lt;b&gt;&lt;a href="http://code.msdn.microsoft.com/mschart/Release/ProjectReleases.aspx?ReleaseId=1591"&gt;bu linkten&lt;/a&gt;&lt;/b&gt; indireceğiniz &amp;#246;rnek projeden Chart kontrol&amp;#252; kullanılarak hazırlanmış bir&amp;#231;ok grafiği inceleyebilirsiniz. Yukarıdaki dosyaların kurulumlarını yaptıktan sonra Visual Studio 2008 &amp;#252;zerinde geliştireceğimiz bir projede Chart kontrol&amp;#252;n&amp;#252; inceleyebiliriz.&lt;/p&gt;  &lt;p&gt;&amp;#214;ncelikli olarak Chart kontrol&amp;#252;n&amp;#252;n tıpkı DataList, GridView vb. veri kontrollerinde olduğu gibi DataSource nesneleriyle &amp;#231;alıştığını s&amp;#246;yleyebiliriz. Yani veritabanından veya bir nesneden gelen verilerin bu kontrole DataSource &amp;#246;zelliği &amp;#252;zerinden bağlanması gerekecektir. Veritabanından gelen kayıtların key-value &amp;#231;ifti şeklinde iki kolona sahip olması grafik raporu oluşturmak i&amp;#231;in yeterli olacaktır(Mağaza-Satış miktarı, &amp;#214;ğrenci-Not ortalaması gibi). Bu ilk &amp;#246;rneğimizde Northwind veritabanındaki Product tablosundan belirli bir kategoride yer alan &amp;#252;r&amp;#252;nlerin fiyatlarını grafik tablo &amp;#252;zerinde &amp;#231;izmeye &amp;#231;alışalım. Gerekli bileşenleri kurduğumuzda Chart kontrol&amp;#252; Toolbox'ın Data kısmındaki kontrollerin i&amp;#231;erisinde bulunacaktır. Bu kontrol&amp;#252;&amp;#160; formumuz &amp;#252;zerine s&amp;#252;r&amp;#252;kleyip bırakıyoruz. &lt;/p&gt;  &lt;p&gt;HTML kodlarında g&amp;#246;r&amp;#252;leceği gibi Chart kontrol&amp;#252;n&amp;#252;n i&amp;#231;erisinde &lt;b&gt;Series&lt;/b&gt; ve &lt;b&gt;ChartAreas&lt;/b&gt; adında iki alt elementi bulunmaktadır. Bu iki element aslında Chart kontrol&amp;#252; &amp;#252;zerinde yapılacak değişikliklerde en sık kullanacağımız kısımlardır. Bu elementlere aynı isimleriyle Chart kontrol&amp;#252;n&amp;#252; se&amp;#231;ip Properties penceresinden de erişebiliriz. Dilerseniz bu kontroller &amp;#252;zerinde işlemler yapmadan &amp;#246;nce ilk olarak Chart kontrol&amp;#252;n&amp;#252; veriye bağlayalım. Zira grafiğin bize sunacağı bilgiler bir veri kaynağından gelecektir. Bu işlem i&amp;#231;in s&amp;#252;r&amp;#252;kleyip bıraktığımız Chart kontrol&amp;#252;n&amp;#252;n sağ &amp;#252;st k&amp;#246;şesindeki smart tag ikonundan a&amp;#231;ılan penceredeki &lt;b&gt;Choose Data Source&lt;/b&gt; kutusundan &lt;b&gt;New Data Source&lt;/b&gt; se&amp;#231;eneğine tıklıyor ve karşımıza &amp;#231;ıkan pencereden bir veri kaynağına bağlanıyoruz. Burada &lt;b&gt;SQL Server&lt;/b&gt;'da bulunan &lt;b&gt;Northwind&lt;/b&gt; isimli veritabanının i&amp;#231;erisindeki &lt;b&gt;Products&lt;/b&gt; tablosu ile &amp;#231;alışıyor olacağız. &amp;#199;alıştıracağımız sorgu SELECT ProductName, UnitPrice FROM Products WHERE CategoryID = 4 olacak.     &lt;br /&gt;&lt;b&gt;&lt;a href="http://lh4.ggpht.com/_657dzC0AiLc/STRh4sAdKgI/AAAAAAAAAN4/s4L_vgPD4AY/s1600-h/chart_tablo_select%5B4%5D.gif"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="277" alt="" src="http://lh4.ggpht.com/_657dzC0AiLc/STRh5RdGmvI/AAAAAAAAAN8/RtCUknj9x20/chart_tablo_select_thumb%5B2%5D.gif?imgmax=800" width="528" border="0" /&gt;&lt;/a&gt;&amp;#160; &lt;br /&gt;&lt;/b&gt;&lt;b&gt;Resim&lt;/b&gt;: SqlDataSource kontrol&amp;#252;yle Products tablosunda sorgunun oluşturulması&lt;/p&gt;  &lt;p&gt;DataSource bağlama işlemi tabi ki grafiğin &amp;#231;izilmesi i&amp;#231;in yeterli olmayacaktır. Sonu&amp;#231; k&amp;#252;mesinde getirilen hangi kolon kategori, hangi kolon değer taşıyan olacak, bunları da belirtmemiz gerekecektir. Chart kontrol&amp;#252;m&amp;#252;z&amp;#252;n Series &amp;#246;zelliği g&amp;#246;r&amp;#252;nt&amp;#252;lenecek grafiğin bi&amp;#231;imi, formatı ve g&amp;#246;r&amp;#252;nt&amp;#252;lenecek kolonlarla alakalı bilgieri saklamaktadır. &lt;b&gt;Series&lt;/b&gt; koleksiyonu i&amp;#231;erisindeki i&amp;#231;erisindeki &lt;b&gt;XValueMember&lt;/b&gt; &amp;#246;zelliği X doğrusunda kullanılacak kolonu (sorgu sonucunda gelecek kolonlardan birisi), &lt;b&gt;YValueMember&lt;/b&gt; &amp;#246;zelliği ise Y doğrusunda kullanılacak kolonu saklar. X doğrultusunda &amp;#252;r&amp;#252;n isimlerini, Y doğrultusunda da fiyatları grafik olarak &amp;#231;izdireceğimiz i&amp;#231;in XValueMember'a ProductName,&amp;#160; YValueMember'a da UnitPrice değerlerini atıyoruz. Tabi ki burada akla gelen bir diğer soru da farklı şekillerde grafikleri nasıl oluşturabileceğiz olacaktır. Yine Series &amp;#246;zelliği i&amp;#231;erisindeki &lt;b&gt;ChartType&lt;/b&gt; &amp;#246;zelliğinden de oluşturulacak grafiğin şekli se&amp;#231;ilebilir. ChartType se&amp;#231;im kutusunda karşımıza &amp;#231;ıkan bol miktardaki grafikler ger&amp;#231;ektende ne kadar farklı grafik tabloları &amp;#252;retebileceğimzin bir g&amp;#246;stergesi! Aşağıdaki resimlerde bu se&amp;#231;imlerin yapıldığı &amp;#246;zellikleri g&amp;#246;rebilirsiniz.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_657dzC0AiLc/STRh6UuTwFI/AAAAAAAAAOA/c8CXb7SILQg/s1600-h/chart_series_member_secim%5B4%5D.gif"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="334" alt="Chart Series - Member Se&amp;#231;imi" src="http://lh5.ggpht.com/_657dzC0AiLc/STRh7dOD45I/AAAAAAAAAOE/_EdbhUrj77Y/chart_series_member_secim_thumb%5B2%5D.gif?imgmax=800" width="472" border="0" /&gt;&lt;/a&gt;     &lt;br /&gt;&lt;b&gt;Resim&lt;/b&gt;: XValueMember ve YValueMember &amp;#246;zelliklerinden X ve Y doğrultusunda kullanılacak kolonların se&amp;#231;ilmesi&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_657dzC0AiLc/STRh8Yr-bBI/AAAAAAAAAOI/wuiD7ScWHgU/s1600-h/chart_series_type_secim%5B4%5D.gif"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="334" alt="Chart Series - Chart Tipi Se&amp;#231;imi" src="http://lh5.ggpht.com/_657dzC0AiLc/STRh9VQLaLI/AAAAAAAAAOM/pSZEJB8_qmA/chart_series_type_secim_thumb%5B2%5D.gif?imgmax=800" width="476" border="0" /&gt;&lt;/a&gt;&amp;#160;&amp;#160; &lt;br /&gt;&lt;b&gt;Resim&lt;/b&gt;: ChartType &amp;#246;zelliğinden grafik tipinin se&amp;#231;ilmesi&lt;/p&gt;  &lt;p&gt;Yapılan değişikliklerin ardından Chart ve SqlDataSource kontrol&amp;#252;m&amp;#252;z&amp;#252;n oluşturacağı HTML kodlarını aşağıdan g&amp;#246;rebilirsiniz. Kodlardan da g&amp;#246;r&amp;#252;ld&amp;#252;ğ&amp;#252; gibi Chart kontrol&amp;#252;ne bağlanacak data source kontrol&amp;#252; ve değiştirilecek birka&amp;#231; &amp;#246;zelliğin sonucunda g&amp;#246;rsel olarak olduk&amp;#231;a hoş bir grafik tablosu elde edebiliriz. Sayfamızı &amp;#231;alıştırdığımızda aşağıdaki resimde g&amp;#246;r&amp;#252;len grafiği elde edebiliriz.&lt;/p&gt;  &lt;div style="font-size: 10pt; background: white; color: black; font-family: consolas"&gt;   &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;Chart&lt;/span&gt; &lt;span style="color: red"&gt;ID&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;Chart1&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;runat&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt; &lt;span class="style1" style="color: red"&gt;DataSourceID&lt;/span&gt;&lt;span class="style1" style="color: blue"&gt;=&amp;quot;SqlDataSource1&amp;quot;&lt;/span&gt; &lt;span class="style1" style="color: red"&gt;Width&lt;/span&gt;&lt;span style="color: blue"&gt;&lt;b&gt;=&amp;quot;450px&amp;quot; Height=&amp;quot;450px&amp;quot;&lt;/b&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;Series&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;Series&lt;/span&gt; &lt;span style="color: red"&gt;Name&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;Series1&amp;quot;&lt;/span&gt; &lt;span class="style1" style="color: red"&gt;XValueMember&lt;/span&gt;&lt;span class="style1" style="color: blue"&gt;=&amp;quot;ProductName&amp;quot;&lt;/span&gt; &lt;span class="style1" style="color: red"&gt;YValueMembers&lt;/span&gt;&lt;span class="style1" style="color: blue"&gt;=&amp;quot;UnitPrice&amp;quot;&lt;/span&gt;&lt;b&gt; &lt;/b&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;b&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/b&gt;&lt;span class="style1" style="color: red"&gt;ChartType&lt;/span&gt;&lt;span style="color: blue"&gt;&lt;b&gt;=&amp;quot;Pie&amp;quot;&lt;/b&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;Series&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;Series&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;ChartAreas&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;ChartArea&lt;/span&gt; &lt;span style="color: red"&gt;Name&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;ChartArea1&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;ChartArea&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;ChartAreas&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;Chart&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;SqlDataSource&lt;/span&gt; &lt;span style="color: red"&gt;ID&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;&lt;b&gt;SqlDataSource1&lt;/b&gt;&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;runat&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt; &lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: red"&gt;ConnectionString&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;&lt;/span&gt;&lt;span style="background: #ffee62"&gt;&amp;lt;%&lt;/span&gt;$ ConnectionStrings:NorthwindConnectionString &lt;span style="background: #ffee62"&gt;%&amp;gt;&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;quot;&lt;/span&gt; &lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: red"&gt;SelectCommand&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;&lt;b&gt;SELECT [ProductName], [UnitPrice] FROM [Products] WHERE ([CategoryID] = @CategoryID)&lt;/b&gt;&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;SelectParameters&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;Parameter&lt;/span&gt; &lt;span style="color: red"&gt;DefaultValue&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;4&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;Name&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;CategoryID&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;Type&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;Int32&amp;quot;&lt;/span&gt; &lt;span style="color: blue"&gt;/&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;SelectParameters&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;SqlDataSource&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_657dzC0AiLc/STRh-D8nq1I/AAAAAAAAAOQ/Z6sI3a6B-YM/s1600-h/chart_ilk_tablo%5B4%5D.gif"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="402" alt="Chart kontrol&amp;#252; ilk grafik tablosu" src="http://lh5.ggpht.com/_657dzC0AiLc/STRh_WG36pI/AAAAAAAAAOU/ffIw1-zaQoA/chart_ilk_tablo_thumb%5B2%5D.gif?imgmax=800" width="370" border="0" /&gt;&lt;/a&gt;    &lt;br /&gt;&lt;b&gt;Resim&lt;/b&gt;: Oluşturduğumuz ilk chart tablomuz &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-7520091700356167366?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/7520091700356167366/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=7520091700356167366' title='2 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/7520091700356167366'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/7520091700356167366'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/12/aspnet-35-chart-kontrol-kurulum-ve-ilk.html' title='ASP.NET 3.5 Chart Kontrolü - Kurulum ve İlk Grafik Raporumuz'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_657dzC0AiLc/STRh4J_GbdI/AAAAAAAAAN0/L4rdJs6dMP0/s72-c/aspnet35-chart-ornekler_thumb%5B2%5D.gif?imgmax=800' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-6263395592497192599</id><published>2008-11-29T02:34:00.003+02:00</published><updated>2008-11-30T14:24:08.025+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='webiner'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net'/><category scheme='http://www.blogger.com/atom/ns#' term='haberler'/><title type='text'>ASP.NET Webinerleri: Membership, Role, Profile</title><content type='html'>&lt;p&gt;&lt;img style="MARGIN: 0px 10px 10px 0px" src="http://3.bp.blogspot.com/_657dzC0AiLc/RkHFG3YU-3I/AAAAAAAAAAM/bwWY8Mf4PBI/s320/aspnetwebiner.gif" align="left" /&gt; Uzun bir aradan sonra yeniden webinerlerle karşınızdayım. &lt;/p&gt;&lt;p&gt;Önümüzdeki hafta içerisinde &lt;strong&gt;ASP.NET Membership&lt;/strong&gt;, &lt;strong&gt;Role&lt;/strong&gt; ve &lt;strong&gt;Profile&lt;/strong&gt; konularında gerçekleştireceğim webinerlere bu konularla ilgilenen herkesi bekliyorum. Biliyorsunuz seminer webden olunca, kontenjan, ulaşım vb. problemlerimiz olmuyor, evden, okuldan veya işyerinden, kısacası internete bağlanabileceğiniz herhangi bir yerden bu etkinliklere katılabilirsiniz. Bir &lt;strong&gt;nedirtv?com&lt;/strong&gt; ve &lt;strong&gt;INETA Türkiye&lt;/strong&gt; etkinliği olan bu webinerlerle ilgili tüm detayları aşağıdan bulabilirsiniz. &lt;/p&gt;&lt;p&gt;&lt;strong&gt;Konu: ASP.NET Membership&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;İçerik&lt;/strong&gt;: Membership API ile gelen kontroller, özel tipler, SQL Server'daki nesneler, konfigürasyon ayarları, Custom MembershipProvider yazımı gibi konuları inceleyeceğiz.&lt;br /&gt;&lt;strong&gt;Zaman&lt;/strong&gt;: 1 Aralık 2008 Pazartesi&lt;br /&gt;&lt;strong&gt;Saat&lt;/strong&gt;: 15:00 - 16:00&lt;br /&gt;&lt;strong&gt;Katılım için adres&lt;/strong&gt;: &lt;a href="https://www.livemeeting.com/cc/usergroups/join?id=WQB485&amp;amp;role=attend" target="_blank"&gt;https://www.livemeeting.com/cc/usergroups/join?id=WQB485&amp;amp;role=attend&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Konu: ASP.NET Role ve Profile&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;İçerik&lt;/strong&gt;: Role ve Profile API ile gelen nesneler ve özel tiplerin kullanımı, programatik olarak yapılabilecek işlemler, rol tabanlı güvenlik işlemleri ve Web Site Administrator Tool'un kullanımını inceleyeceğiz.&lt;br /&gt;&lt;strong&gt;Zaman&lt;/strong&gt;: 5 Aralık 2008 Cuma&lt;br /&gt;&lt;strong&gt;Saat&lt;/strong&gt;: 15:00 - 16:00&lt;br /&gt;&lt;strong&gt;Katılım için adres&lt;/strong&gt;: &lt;a href="https://www.livemeeting.com/cc/usergroups/join?id=B6Q6JZ&amp;amp;role=attend"&gt;https://www.livemeeting.com/cc/usergroups/join?id=B6Q6JZ&amp;amp;role=attend&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Webinerlerin sonunda sizlerden bu konularla ilgili gelen soruları da cevaplandıyor olacağım. Görüşmek dileğiyle...&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-6263395592497192599?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/6263395592497192599/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=6263395592497192599' title='3 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/6263395592497192599'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/6263395592497192599'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/11/aspnet-webinerleri-membership-role.html' title='ASP.NET Webinerleri: Membership, Role, Profile'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_657dzC0AiLc/RkHFG3YU-3I/AAAAAAAAAAM/bwWY8Mf4PBI/s72-c/aspnetwebiner.gif' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-4640446766240025948</id><published>2008-11-29T00:36:00.001+02:00</published><updated>2008-11-29T02:32:00.539+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='seminer'/><title type='text'>Gençsen Geleceksin 2.0 - Gebze Yüksek Teknoloji Enstitüsü</title><content type='html'>&lt;p&gt;Bir başka &lt;strong&gt;Gen&amp;#231;sen Geleceksin 2.0&lt;/strong&gt; etkinliğinde &lt;strong&gt;2 Aralık 2008 Salı&lt;/strong&gt; g&amp;#252;n&amp;#252; saat &lt;strong&gt;12:30&lt;/strong&gt;'da &lt;strong&gt;Gebze Y&amp;#252;ksek Teknoloji Enstit&amp;#252;s&amp;#252;(GYTE)&lt;/strong&gt;'nde seminer veriyor olacağım. Microsoft'un &lt;strong&gt;Surface&lt;/strong&gt;, &lt;strong&gt;Azure&lt;/strong&gt;, &lt;strong&gt;XNA Studio&lt;/strong&gt;, &lt;strong&gt;Silverlight&lt;/strong&gt; gibi g&amp;#252;n&amp;#252;m&amp;#252;z ve gelecek nesil teknolojilerinden ve bu teknolojilerin getireceği iş fırsatlarından bahsedeceğim bu seminere t&amp;#252;m GYTE &amp;#246;ğrencilerini bekliyorum.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-4640446766240025948?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/4640446766240025948/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=4640446766240025948' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/4640446766240025948'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/4640446766240025948'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/11/gensen-geleceksin-20-gebze-yksek.html' title='Gençsen Geleceksin 2.0 - Gebze Yüksek Teknoloji Enstitüsü'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-2116185655119402818</id><published>2008-11-25T11:30:00.004+02:00</published><updated>2008-11-27T00:27:44.861+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='silverlight'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net'/><category scheme='http://www.blogger.com/atom/ns#' term='haberler'/><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net mvc'/><title type='text'>Microsoft Web Platform Installer: Geliştiriciler için Kolay Kurulum Sihirbazı</title><content type='html'>&lt;p&gt;&lt;strong&gt;Microsoft&lt;/strong&gt;'un son zamanlarda üzerinde çalıştığı uygulamalardan bir tanesi de &lt;strong&gt;Microsoft Web Platform Installer&lt;/strong&gt;. Bu uygulama sadece &lt;strong&gt;ASP.NET&lt;/strong&gt; yazılım geliştiricileri için değil Windows platformları üzerinde &lt;strong&gt;PHP&lt;/strong&gt; uygulamaları çalıştıracak geliştiriciler için de gerekli bileşenlerin işletim sistemine kurulmasını sağlıyor. &lt;strong&gt;.NET Framework 3.5 Service Pack 1&lt;/strong&gt;, &lt;strong&gt;ASP.NET MVC Beta&lt;/strong&gt;, &lt;strong&gt;PHP için SQL Server Driver&lt;/strong&gt;'ları, &lt;strong&gt;Visual Web Developer 2008 Express Edition&lt;/strong&gt;, &lt;strong&gt;Visual Studio için SilverLight araçları, SQL Express 2008, IIS 7.0 yönetim araçları &lt;/strong&gt;gibi birçok bileşeni tek bir uygulama üzerinden kurulabilmesi gerçekten biz geliştiricilerin kurulum dertlerini ortadan kaldırıyor. Özellikle işletim sistemini kurduktan sonra sağdan soldan bulduğumuz, indirdiğimiz dosyaları kurmak derdiyle uğraşmadan derli toplu bir kurulum yapma işini artık bu uygulamaya bırakabiliriz.&lt;/p&gt;&lt;p&gt;&lt;a href="http://lh6.ggpht.com/_657dzC0AiLc/SSvFwj8ASII/AAAAAAAAANo/zEvpJtJ0jCY/s1600-h/WebPlatformInstaller_Setup2%5B5%5D.gif"&gt;&lt;img style="BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; MARGIN: 0px 10px 5px 0px; BORDER-RIGHT-WIDTH: 0px" height="282" alt="Windows Web Platform Installer Setup" src="http://lh5.ggpht.com/_657dzC0AiLc/SSvFxs0LHYI/AAAAAAAAANs/CH7lD97pOOo/WebPlatformInstaller_Setup2_thumb%5B3%5D.gif?imgmax=800" width="379" align="left" border="0" /&gt;&lt;/a&gt;Kurulum ekranında karşınıza çıkan &lt;strong&gt;Complete&lt;/strong&gt; seçeneği standart olarak ihtiyaç duyulan tüm araçların kurulumunu, &lt;strong&gt;ASP.NET Developer&lt;/strong&gt; seçeneği sadece ASP.NET programcılarının ihtiyacı olabilecek bileşenleri, &lt;strong&gt;Your Choice &lt;/strong&gt;seçeneği ise tamamen kendi ihtiyacınıza göre gerekli bileşenleri kurmamızı sağlıyor. Başlangıçta 60 Kb'lık küçük bir dosyayı bilgisayarınıza indirmek yeterli. Seçimlerinize göre gerekli bileşenleri kurulum esnasından bilgisayarınıza yükleyerek kurulumum tamamlayacaktır. Uygulamanın &lt;strong&gt;Windows XP&lt;/strong&gt; ve sonrasında çıkan tüm Windows işletim sistemlerine kurulabileceğini de belirtmek lazım.&lt;/p&gt;&lt;p&gt;Uygulamayı bilgisayarınıza indirmek için &lt;a href="http://www.microsoft.com/web/channel/products/WebPlatformInstaller.aspx" target="_blank"&gt;&lt;strong&gt;bu linki&lt;/strong&gt;&lt;/a&gt; kullanabilirsiniz.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-2116185655119402818?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/2116185655119402818/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=2116185655119402818' title='2 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/2116185655119402818'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/2116185655119402818'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/11/microsoft-web-platform-installer.html' title='Microsoft Web Platform Installer: Geliştiriciler için Kolay Kurulum Sihirbazı'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_657dzC0AiLc/SSvFxs0LHYI/AAAAAAAAANs/CH7lD97pOOo/s72-c/WebPlatformInstaller_Setup2_thumb%5B3%5D.gif?imgmax=800' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-1271802255821544969</id><published>2008-11-20T22:50:00.003+02:00</published><updated>2008-11-22T23:16:09.143+02:00</updated><title type='text'>.NET Framework 4.0 ve Visual Studio 2010 CTP</title><content type='html'>&lt;p&gt;&lt;a href="http://lh4.ggpht.com/_657dzC0AiLc/SShwipPhOUI/AAAAAAAAANY/Q8t5klSVY8Y/s1600-h/logo_netframework_40%5B4%5D.gif"&gt;&lt;img style="border-width: 0px; margin: 0px 5px 0px 0px;" alt=".NET Framework'ün Yeni Logosu" src="http://lh6.ggpht.com/_657dzC0AiLc/SShwjkLDcHI/AAAAAAAAANc/c7v-ZFeXgUk/logo_netframework_40_thumb%5B2%5D.gif?imgmax=800" width="140" align="left" border="0" height="42" /&gt;&lt;/a&gt; Geçtiğimiz haftalarda gerçekleşen &lt;strong&gt;PDC 2008&lt;/strong&gt; etkinliğinde &lt;strong&gt;Microsoft&lt;/strong&gt; önümüzdeki yıl resmi olarak duyurmayı planladığı &lt;strong&gt;.NET Framework 4.0&lt;/strong&gt;'ın ve &lt;strong&gt;Visual Studio 2010&lt;/strong&gt;'un &lt;strong&gt;CTP(Community Technology Preview)&lt;/strong&gt; sürümlerini duyurdu. Yazılım geliştiriciler için her zamanki gibi önemli yeniliklerin geleceği bu sürümleri şimdiden tanımak ve incelemek için aşağıdaki linkten detaylı bilgileri elde edebilir ve gerekli kurulumları bilgisayarınıza yükleyebilirsiniz. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=922B4655-93D0-4476-BDA4-94CF5F8D4814&amp;amp;displaylang=en" target="_blank"&gt;Visual Studio 2010 ve .NET Framework 4.0 Community Technology Preview&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-1271802255821544969?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/1271802255821544969/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=1271802255821544969' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/1271802255821544969'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/1271802255821544969'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/11/net-framework-40-ve-visual-studio-2010.html' title='.NET Framework 4.0 ve Visual Studio 2010 CTP'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_657dzC0AiLc/SShwjkLDcHI/AAAAAAAAANc/c7v-ZFeXgUk/s72-c/logo_netframework_40_thumb%5B2%5D.gif?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-8101434525813326084</id><published>2008-11-13T15:56:00.003+02:00</published><updated>2008-11-13T15:59:21.444+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='haberler'/><category scheme='http://www.blogger.com/atom/ns#' term='seminer'/><title type='text'>Gençsen Geleceksin 2.0 - İstanbul Teknik Üniversitesi</title><content type='html'>&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 200px; height: 283px;" src="http://2.bp.blogspot.com/_657dzC0AiLc/SRww_bcCYaI/AAAAAAAAAKM/eegfbaaZvV8/s320/gencsen-geleceksin-20.jpg" alt="Gençsen Geleceksin Etkinliği - 18 Kasım 2008, İTÜ Maçka Yerleşkesi" id="BLOGGER_PHOTO_ID_5268139530371883426" border="0" /&gt;&lt;strong&gt;Microsoft&lt;/strong&gt; ve &lt;strong&gt;Turkcell&lt;/strong&gt;'in bu yıl ikinci kez düzenlediği &lt;strong&gt;"Gençsen Geleceksin"&lt;/strong&gt; etkinlikleri tüm hızıyla devam ediyor. Türkiye'nin dört bir yanındaki üniversitelerde öğrencilerle buluştuğumuz bu etkinliklerde gelecek yıllarda gerçekleşecek teknolojik gelişmelerden, yazılımın, internetin ve mobil teknolojilerin ne doğrultuda gelişeceğinden bahsedeceğiz. Eminim ki gelecek adına birçok üniversite öğrencisinin ufkunu açacak bir içeriği sunuyor olacağız.  &lt;p&gt;Bu etkinlikler çerçevesinde ben de &lt;strong&gt;18 Kasım 2008 Salı&lt;/strong&gt; günü saat &lt;strong&gt;17:00&lt;/strong&gt;'da &lt;strong&gt;İstanbul Teknik Üniversitesi Maçka Kampüsü&lt;/strong&gt;nde sizlerle birlikte olacağım. Etkinliğin içeriğini ve diğer üniversitelerdeki programa erişmek için &lt;a href="http://www.gencsengeleceksin.com/" target="_blank"&gt;www.gencsengeleceksin.com&lt;/a&gt; adresine göz atabilirsiniz.&lt;/p&gt;  &lt;p&gt;Bu arada unutmadan; etkinliğin sonunda yapılacak çekilişte 1 kişi hediye olarak &lt;strong&gt;Turkcell PDA cep bilgisayarı&lt;/strong&gt; kazanacak :)&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-8101434525813326084?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/8101434525813326084/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=8101434525813326084' title='1 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/8101434525813326084'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/8101434525813326084'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/11/gensen-geleceksin-20-istanbul-teknik.html' title='Gençsen Geleceksin 2.0 - İstanbul Teknik Üniversitesi'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_657dzC0AiLc/SRww_bcCYaI/AAAAAAAAAKM/eegfbaaZvV8/s72-c/gencsen-geleceksin-20.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-6136052160210597452</id><published>2008-11-13T10:28:00.003+02:00</published><updated>2008-11-13T14:42:39.584+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='silverlight'/><category scheme='http://www.blogger.com/atom/ns#' term='haberler'/><title type='text'>PPT ve SWF Dosyaları ile Çalışan SilverLight Örnekleri</title><content type='html'>&lt;p&gt;Değerli hocam &lt;strong&gt;M.Yaşar ÖZDEN&lt;/strong&gt;'in yaptığı çalışmaları sergilediği &lt;strong&gt;&lt;a href="http://ideas.ceit.metu.edu.tr/BotebOnline_vs2005/Pages/AnaSayfa.aspx" target="_blank"&gt;BÖTEBOnline&lt;/a&gt;&lt;/strong&gt; isimli video portalını daha önceden incelemediyseniz ziyaret etmenizi tavsiye ederim. Bizim interneti sadece MIRC kanallarında chat yapmaktan ibaret bildiğimiz zamanlarda, Türkiye'nin internetten ilk canlı radyo ve televizyon yayınlarını yapan bu sitede şimdilerde Webcast'ler ve &lt;strong&gt;SilverLight&lt;/strong&gt; ile hazırlanmış medya örneklerini bulabilmeniz mümkün. Yaşar Hoca'mın son zamanlarda hazırladığı SilverLight'ın &lt;strong&gt;PowerPoint&lt;/strong&gt; sunumlarıyla(.ppt) ve &lt;strong&gt;Flash&lt;/strong&gt; nesneleriyle(.swf) çalışması ilgili örnekleri gerçekten dikkat çekici.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;a href="http://ideas.ceit.metu.edu.tr/BotebOnline_vs2005/Pages/SilverLight.aspx" target="_blank"&gt;Bu linkten&lt;/a&gt;&lt;/strong&gt; SilverLight ile yapılmış örnekleri inceleyebilirsiniz.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-6136052160210597452?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/6136052160210597452/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=6136052160210597452' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/6136052160210597452'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/6136052160210597452'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/11/ppt-ve-swf-dosyalar-ile-alan.html' title='PPT ve SWF Dosyaları ile Çalışan SilverLight Örnekleri'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-2005527843281617576</id><published>2008-10-30T11:23:00.004+02:00</published><updated>2008-11-21T00:53:13.508+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.net framework 4.0'/><title type='text'>.NET Framework 4.0 Posteri</title><content type='html'>&lt;p&gt;Birden geçtiğimiz sene bu zamanlarda bloglarımızda ardı ardına yayınlanan poster başlıkları geldi aklıma. &lt;span style="font-weight: bold;"&gt;PDC 2008&lt;/span&gt; etkinliğinde önümüzdeki aylarda ve yıllarda bizi bekleyen bir çok yenilik duyuruldu ve duyurulmaya da devam ediliyor. Yazılım dünyasını en çok heyecanlandıran yenilikler tabi ki &lt;span style="font-weight: bold;"&gt;.NET Framework 4.0&lt;/span&gt; ve &lt;span style="font-weight: bold;"&gt;Visual Studio 2010&lt;/span&gt;. .NET Framework 4.0 ile mimariye katılması beklenen &lt;span style="font-weight: bold;"&gt;namespace&lt;/span&gt; ve &lt;span style="font-weight: bold;"&gt;tip&lt;/span&gt;lerin bulunduğu bir poster az önce RSS Reader'ıma düştü ve hemen paylaşayım dedim.&lt;/p&gt;&lt;img style="cursor: pointer; width: 200px; height: 134px;" src="http://4.bp.blogspot.com/_657dzC0AiLc/SQmOGA7s_PI/AAAAAAAAAKE/g8UnAQ6Kz-I/s200/PDC2008-NETFX4.png" alt=".NET Framework 4.0 - Namespace ve Tipler" id="BLOGGER_PHOTO_ID_5262893873539906802" border="0" /&gt;&lt;br /&gt;&lt;p&gt;Aşağıdaki linklerden&lt;span style="font-weight: bold;"&gt; .NET Framework 4.0 poster&lt;/span&gt;lerine erişebilirsiniz:&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;a href="http://blogs.msdn.com/blogfiles/brada/WindowsLiveWriter/55ff37220b2c.NETFramework4Poster_67A1/PDC2008-NETFX4.png" target="_blank"&gt;&lt;/a&gt;&lt;/strong&gt;&lt;a href="http://tinyurl.com/PDC2008-NETFX4PDF" target="_blank"&gt;&lt;strong&gt;.NET Framework 4.0 Poster-PDF&lt;/strong&gt;&lt;/a&gt;&lt;br /&gt;&lt;strong&gt;&lt;a href="http://brad_abrams.members.winisp.net/Projects/PDC2008/DotNet4Poster/DotNetFramework4PosterDeepZoom.htm" target="_blank"&gt;.NET Framework 4.0 Poster-DeepZoom&lt;/a&gt;&lt;/strong&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-2005527843281617576?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/2005527843281617576/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=2005527843281617576' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/2005527843281617576'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/2005527843281617576'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/10/net-framework-40-posteri.html' title='.NET Framework 4.0 Posteri'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_657dzC0AiLc/SQmOGA7s_PI/AAAAAAAAAKE/g8UnAQ6Kz-I/s72-c/PDC2008-NETFX4.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-7311659328763596712</id><published>2008-10-29T19:28:00.002+02:00</published><updated>2008-11-13T16:00:09.441+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='kişisel'/><category scheme='http://www.blogger.com/atom/ns#' term='haberler'/><title type='text'>INETA Capital Hit'in Ardından</title><content type='html'>&lt;p&gt;Blogspot'un kapatılmasından dolayı son günlerde bloguma yazmaktan ziyade blogumu kendi domain'ime taşıma işlemleriyle uğraşıyorum. Ama bu aralıkta Ineta Capital Hit'in bıraktığı izlenimleri yazmazsam da olmaz. Geçtiğimiz hafta Ankara'da dolu dolu iki gün geçirdik bilişimi ve yazılımı seven insanlarla. Etkinlikte anlatılanlar, panel, etkinlik arasında katılımcılarla yaptığımız konuşmalar gerçekten görmeye, izlemeye dinlemeye değerdi. Fakat herşeyden ötesi Ankara'ya giderken minibüste yaşadığımız filmlik serüvenler tek kelimeyle mükemmeldi. Tüm INETA ekibine, minibüs şoförümüze ve muavinlerimize teşekkür ediyorum bu yolculuk için:)&lt;/p&gt;  &lt;p&gt;Etkinlikten bir hatıra fotoğrafı ve etkinliğimizi kısaca özetleyen süper bir videoyu aşağıda bulabilirsiniz.&lt;a href="http://lh5.ggpht.com/umutluoglu/SQidafDH8UI/AAAAAAAAAJ8/JriB0OIL-xQ/s1600-h/ineta_capital_hit%5B4%5D.jpg"&gt;&lt;img style="border-width: 0px;" alt="ineta_capital_hit" src="http://lh5.ggpht.com/umutluoglu/SQidbcsTzBI/AAAAAAAAAKA/shzx2mXN43c/ineta_capital_hit_thumb%5B2%5D.jpg?imgmax=800" width="302" border="0" height="202" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;iframe id="I1" border="0" name="I1" src="http://daron.yondem.com/tr/silverlight/sl10videos/capitalhit08teaser/" scrolling="no" width="640" frameborder="0" height="360"&gt;&amp;amp;amp;amp;lt;/div&amp;amp;amp;amp;gt;&amp;amp;amp;amp;amp;lt;/DIV&amp;amp;amp;amp;amp;gt;&amp;amp;amp;amp;amp;lt;/DIV&amp;amp;amp;amp;amp;gt;&amp;amp;amp;amp;amp;lt;/DIV&amp;amp;amp;amp;amp;gt;&amp;amp;amp;amp;amp;lt;/DIV&amp;amp;amp;amp;amp;gt;&amp;amp;amp;amp;amp;lt;/DIV&amp;amp;amp;amp;amp;gt;&amp;amp;amp;amp;amp;lt;/DIV&amp;amp;amp;amp;amp;gt;&amp;amp;amp;amp;amp;lt;/DIV&amp;amp;amp;amp;amp;gt;&amp;amp;amp;amp;amp;lt;/DIV&amp;amp;amp;amp;amp;gt;&amp;amp;amp;amp;amp;lt;/DIV&amp;amp;amp;amp;amp;gt;&amp;amp;amp;amp;lt;/body&amp;amp;amp;amp;gt;&amp;amp;amp;amp;lt;/body&amp;amp;amp;amp;gt;&amp;amp;amp;amp;lt;/html&amp;amp;amp;amp;gt;&lt;/iframe&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-7311659328763596712?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/7311659328763596712/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=7311659328763596712' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/7311659328763596712'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/7311659328763596712'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/10/ineta-capital-hit-ardndan.html' title='INETA Capital Hit&amp;#39;in Ardından'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/umutluoglu/SQidbcsTzBI/AAAAAAAAAKA/shzx2mXN43c/s72-c/ineta_capital_hit_thumb%5B2%5D.jpg?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-6014383456248752365</id><published>2008-10-20T23:08:00.001+03:00</published><updated>2008-10-20T23:20:53.824+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='haberler'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net mvc'/><title type='text'>ASP.NET MVC Framework Beta Duyuruldu</title><content type='html'>&lt;p&gt;&lt;strong&gt;ASP.NET MVC&lt;/strong&gt; ürün olma yolunda en önemli adımlardan birini gerçekleştirdi ve &lt;strong&gt;beta&lt;/strong&gt; versiyonuyla piyasaya sürüldü. Özellikle veritabanı işlemlerinin yoğun şekilde yapıldığı orta ve büyük çaplı projelerde kullanılabilecek olan bu yapı önümüzdeki aylarda 1.0 sürümüyle artık resmen ASP.NET geliştiricilerinin kullanımına hazır olacak. Tabi ki ASP.NET MVC'nin tam anlamıyla stabil hale gelmesi için .NET Framework 4.0'ı beklemek gerekebilir.&lt;/p&gt;  &lt;p&gt;Benim gözüme çarpan ilk yenilikler &lt;strong&gt;Visual Studio&lt;/strong&gt; tarafına baktığımızda kod yazımını hızlandıracak bazı yeniliklerin gelmesi ve artık proje şablonuna eklenen &lt;strong&gt;Scripts&lt;/strong&gt; klasörüne &lt;strong&gt;ASP.NET AJAX, &lt;strong&gt;jQuery&lt;/strong&gt;&lt;/strong&gt; gibi JavaScript kütüphanelerinin ekli olarak gelmesi. Yanılmıyorsam jQuery de resmi olarak ilk defa bir Microsoft ürünüyle ile birlikte anılmaya başlandı. (Ki gelecekte daha da fazla anılacak emin olabilirsiniz)&lt;/p&gt;  &lt;p&gt;ASP.NET MVC Beta'yı bilgisayarınıza kurmak için &lt;strong&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=A24D1E00-CD35-4F66-BAA0-2362BDDE0766&amp;amp;displaylang=en" target="_blank"&gt;bu linki&lt;/a&gt;&lt;/strong&gt; &lt;br /&gt;ASP.NET MVC ile ilgili detaylı bilgilere erişmek için &lt;strong&gt;&lt;a title="http://www.asp.net/mvc" href="http://www.asp.net/mvc" target="_blank"&gt;http://www.asp.net/mvc&lt;/a&gt;&lt;/strong&gt; linkini kullanabilirsiniz.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-6014383456248752365?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/6014383456248752365/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=6014383456248752365' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/6014383456248752365'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/6014383456248752365'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/10/aspnet-mvc-framework-beta-duyuruldu.html' title='ASP.NET MVC Framework Beta Duyuruldu'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-4878864688076079678</id><published>2008-10-14T16:54:00.003+03:00</published><updated>2009-01-04T17:59:13.298+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='haberler'/><category scheme='http://www.blogger.com/atom/ns#' term='nedirtv'/><title type='text'>nedirtv v2.0 Beta Yayınına Başladı</title><content type='html'>&lt;p&gt;&lt;a href="http://lh3.ggpht.com/umutluoglu/SPSkqDwmalI/AAAAAAAAAJo/Ddp4L8Ss0Dg/s1600-h/logo_nedirtv%5B8%5D.png"&gt;&lt;img style="BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height="81" alt="nedirtv" src="http://lh3.ggpht.com/umutluoglu/SPSkqjUon-I/AAAAAAAAAJs/qwFFNJLb2nA/logo_nedirtv_thumb%5B4%5D.png?imgmax=800" width="120" align="left" border="0" /&gt;&lt;/a&gt;Uzun süren çalışmalarımız sonucunda &lt;strong&gt;nedirtv?com&lt;/strong&gt;'un yeni versiyonu test yayınlarına başladı. Yayın hayatına 2006 yılında başlayan, fakat gerek sunucudan kaynaklanan, gerekse altyapısındaki sorunlar nedeniyle tam istenilen şekilde işlemeyen nedirtv'nin artık daha sağlıklı ve kullanılabilir bir hale geldiğini söyleyebilirim. Ajax dışında tüm Web 2.0 nimetlerini kullandığımız bu arayüzün gerek tasarım gerekse işleyiş açısından çok daha kullanışlı olacağını düşünüyorum.&lt;/p&gt;&lt;p&gt;Gelişen editör ekibimiz ile yakında çok daha önemli gelişmelerle karşınızda olacağız. nedirtv v2.0 beta'yı &lt;a href="http://www.nedirtv.com/" target="_blank"&gt;http://www.nedirtv.com/&lt;/a&gt; adresinden inceleyebilirsiniz. Beta aşamasında olduğu için elbetteki sorunlar ve eksiklikler mevcut. Sitede karşılaştığınız sorunlar olursa veya eleştirileriniz olursa üst kısımdaki &lt;strong&gt;Sorun Bildir&lt;/strong&gt; linkinden bizleri haberdar edebilirsiniz.&lt;/p&gt;&lt;p&gt;Çok yakında nedirtv v2.0'ın release olmuş versiyonuyla sizlerde birlikte olmak dileğiyle...&lt;/p&gt;&lt;p&gt;Not: Bu projenin geliştirilmesinde çok büyük emeği geçen sevgili &lt;strong&gt;Serkan PEKTAŞ&lt;/strong&gt;'a teşekkürlerimi bir de blogum aracılığıyla göndermek istiyorum.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-4878864688076079678?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/4878864688076079678/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=4878864688076079678' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/4878864688076079678'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/4878864688076079678'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/10/nedirtv-v20-beta-yaynna-balad.html' title='nedirtv v2.0 Beta Yayınına Başladı'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/umutluoglu/SPSkqjUon-I/AAAAAAAAAJs/qwFFNJLb2nA/s72-c/logo_nedirtv_thumb%5B4%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-4055887829822611063</id><published>2008-10-09T09:20:00.005+03:00</published><updated>2008-10-11T19:33:19.740+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='asp.net'/><category scheme='http://www.blogger.com/atom/ns#' term='linq'/><category scheme='http://www.blogger.com/atom/ns#' term='haberler'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL Server'/><category scheme='http://www.blogger.com/atom/ns#' term='seminer'/><title type='text'>İstanbul Ticaret Üniversitesi Bilişim Günleri Etkinliğinde Konuşmacıyım</title><content type='html'>&lt;p&gt;&lt;a href="http://lh6.ggpht.com/umutluoglu/SO2iugd6LUI/AAAAAAAAAJg/etFeE9-PuWg/s1600-h/logo_iticu4.gif"&gt;&lt;img style="border-width: 0px;" alt="İstanbul Ticaret Üniversitesi - Teknoloji Günleri" src="http://lh5.ggpht.com/umutluoglu/SO2ivDeXCbI/AAAAAAAAAJk/sAy_iBV527c/logo_iticu_thumb2.gif?imgmax=800" width="124" align="left" border="0" height="122" /&gt;&lt;/a&gt;&lt;strong&gt;İstanbul Ticaret Üniversitesi&lt;/strong&gt;'nin bu yıl ilk kez düzenleyeceği &lt;strong&gt;Bilişim Günleri&lt;/strong&gt; etkinliğinde &lt;strong&gt;ASP.NET Uygulamalarında LINQ&lt;/strong&gt; başlıklı oturumda konuşmacı olarak yer alacağım. &lt;strong&gt;17-18 Ekim 2008&lt;/strong&gt; tarihlerinde gerçekleşecek ve sektörümüzden önemli isimlerin yer alacağı bu etkinlikte değerli iş arkadaşlarım &lt;strong&gt;Bülent Sözge&lt;/strong&gt; ve &lt;strong&gt;Burak Batur&lt;/strong&gt;'unda sunumları gerçekleşecek. Bu önemli etkinliği kaçırmamanızı tavsiye ediyorum.&lt;/p&gt;  &lt;p&gt;Aşağıda etkinlikte yer alan bazı oturumların bilgilerini bulabilirsiniz.&lt;/p&gt;  &lt;p&gt;  &lt;strong&gt;&lt;br /&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;17 Ekim 2008 Cuma  &lt;br /&gt;&lt;/strong&gt;15:15-16:15 &lt;br /&gt;ASP.NET Uygulamalarında LINQ (Uğur UMUTLUOĞLU)&lt;br /&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;18 Ekim 2008 Cumartesi&lt;/strong&gt; &lt;br /&gt;13:30-14:30 &lt;br /&gt;SQL Server 2008 (Bülent SÖZGE)&lt;br /&gt;&lt;br /&gt;16:00-17:00 &lt;br /&gt;What is SharePoint? (Burak BATUR)  &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-4055887829822611063?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/4055887829822611063/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=4055887829822611063' title='1 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/4055887829822611063'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/4055887829822611063'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/10/istanbul-ticaret-niversitesi-biliim.html' title='İstanbul Ticaret Üniversitesi Bilişim Günleri Etkinliğinde Konuşmacıyım'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/umutluoglu/SO2ivDeXCbI/AAAAAAAAAJk/sAy_iBV527c/s72-c/logo_iticu_thumb2.gif?imgmax=800' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-8121264060166477452</id><published>2008-10-08T01:32:00.002+03:00</published><updated>2008-10-08T01:55:27.786+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='haberler'/><category scheme='http://www.blogger.com/atom/ns#' term='.net framework'/><title type='text'>Mono 2.0 Resmen Duyuruldu</title><content type='html'>&lt;p&gt;&lt;a href="http://lh4.ggpht.com/umutluoglu/SOvn9ydVqJI/AAAAAAAAAJY/LaN3QLOPcNk/s1600-h/mono20_banner%5B4%5D.gif"&gt;&lt;img style="border-width: 0px;" alt="mono20_banner" src="http://lh4.ggpht.com/umutluoglu/SOvn-hfy6gI/AAAAAAAAAJc/DHAyEDA6gwQ/mono20_banner_thumb%5B2%5D.gif?imgmax=800" width="127" align="right" border="0" height="80" /&gt;&lt;/a&gt; .NET Framework'ün platformdan bağımsızlığı adına oldukça önemli bir haber aslında bu. Zira &lt;strong&gt;Mono 2.0&lt;/strong&gt;'ın resmi olarak duyuruldu, hem de sadece &lt;strong&gt;Linux&lt;/strong&gt; işletim sistemleri için değil, &lt;strong&gt;Mac&lt;/strong&gt; işletim sistemleri içinde! Evet yanlış duymadınız, .NET Framework uygulamaları artık Mono kurulu Linux ve Mac işletim sistemlerinde çalıştırılabilecek. Ayrıca Mono projesinin internet sitesinde yaptığım araştırmalarda Mono'nun IPhone üzerinde de çalıştırılabileceğine dair ibarelerde buldum ama net açıklama gözüme çarpmadığı için bu konuda kesin birşey söylemek doğru olmayabilir.&lt;/p&gt;  &lt;p&gt;Projenin bu denli genişlemesinde elbetteki geçtiğimiz aylarda &lt;strong&gt;Microsoft&lt;/strong&gt; ve &lt;strong&gt;Novell&lt;/strong&gt;'in bazı konularda ortaklaşa çalışma kararı almalarının etkisi oldukça büyük. Zira Mono 2.0 projesi Novell'in desteğiyle geliştirilerek release olmuş durumda.&lt;/p&gt;  &lt;p&gt;Mono kullanmayan birisi olarak sadece bu haberi sizlere duyurmak istedim. Test etme şansını bulanlar olursa bilgi ve tecrübelerini bizlerle paylaşmayı sakın unutmasınlar. Detaylı bilgi ve gerekli yüklemeler için &lt;a href="http://mono-project.com/" target="_blank"&gt;&lt;span style="font-weight: bold;"&gt;Mono projesinin resmi web sitesi&lt;/span&gt;&lt;/a&gt;ni ziyaret edebilirsiniz.&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-8121264060166477452?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/8121264060166477452/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=8121264060166477452' title='2 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/8121264060166477452'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/8121264060166477452'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/10/mono-20-resmen-duyuruldu.html' title='Mono 2.0 Resmen Duyuruldu'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/umutluoglu/SOvn-hfy6gI/AAAAAAAAAJc/DHAyEDA6gwQ/s72-c/mono20_banner_thumb%5B2%5D.gif?imgmax=800' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-3986398093322851750</id><published>2008-10-05T13:02:00.002+03:00</published><updated>2008-10-05T13:09:03.585+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='haberler'/><category scheme='http://www.blogger.com/atom/ns#' term='seminer'/><title type='text'>INETA Capital Hit</title><content type='html'>&lt;p&gt;Geçtiğimiz aylarda gerçekleştirdiğimiz ve yazın en sıcak günlerine rağmen yoğun ilgi alan &lt;strong&gt;INETA Summer Hit&lt;/strong&gt;'in ardından bu kezde &lt;strong&gt;INETA Capital Hit&lt;/strong&gt; ile Anadolu yollarındayız. &lt;strong&gt;INETA Türkiye&lt;/strong&gt; olarak değişen içeriğimizle yine önemli konularındaki bilgi ve tecrübelerimizi &lt;strong&gt;18-19 Ekim 2008&lt;/strong&gt; tarihlerinde &lt;strong&gt;Çankaya Üniversitesi&lt;/strong&gt;'nde Ankara'daki katılımcılarla paylaşıyor olacağız. Sektörümüzde sezon başlangıcı olarak kabul edilen şu anki zaman diliminde sanırım ülkemiz adına muthiş bir etkinlikle bu sezonu açıyor olacağız :)&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Silverlight 2.0, IIS 7.0, LINQ, WPF, Expression Blend, WCF, Internet Explorer 8.0&lt;/strong&gt; ve &lt;strong&gt;ADO.NET Data Services&lt;/strong&gt; gibi oturumların gerçekleştirileceği etkinlikte ben yine &lt;strong&gt;LINQ&lt;/strong&gt; sunumumla yer alacağım. Bu önemli etkinliğe yolu Ankara'ya düşen tüm yazılımcıları bekliyoruz. Kayıt işlemi için &lt;strong&gt;&lt;a href="http://daron.yondem.com/kayit/" target="_blank"&gt;bu linki&lt;/a&gt;&lt;/strong&gt; kullanabilirsiniz.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://daron.yondem.com/kayit/" target="_blank"&gt;&lt;img style="border: 0px none ;" alt="Ineta Capital Hit" src="http://lh6.ggpht.com/umutluoglu/SOiQw6KqOAI/AAAAAAAAAJU/xn_1ogd_H_8/banner_inetacapitalhit%5B5%5D.jpg?imgmax=800" width="468" border="0" height="60" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-3986398093322851750?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/3986398093322851750/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=3986398093322851750' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/3986398093322851750'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/3986398093322851750'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/10/ineta-capital-hit.html' title='INETA Capital Hit'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/umutluoglu/SOiQw6KqOAI/AAAAAAAAAJU/xn_1ogd_H_8/s72-c/banner_inetacapitalhit%5B5%5D.jpg?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-651931699131844151</id><published>2008-10-01T11:06:00.002+03:00</published><updated>2008-11-21T00:54:06.572+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='asp.net'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net ajax'/><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio'/><category scheme='http://www.blogger.com/atom/ns#' term='jQuery'/><title type='text'>jQuery Artık Visual Studio ile Bütünleşik Hale Gelecek!</title><content type='html'>&lt;p&gt;&lt;a href="http://lh4.ggpht.com/umutluoglu/SOMxcnxasYI/AAAAAAAAAJM/wVSEevFIcKk/s1600-h/logo_jquery%5B7%5D.gif"&gt;&lt;img style="border: 0px none ;" alt="jQuery Artık Visual Studio ile Bütünleşik Hale Geliyor" src="http://lh5.ggpht.com/umutluoglu/SOMxdDfpPzI/AAAAAAAAAJQ/kRpjk-wvGdY/logo_jquery_thumb%5B5%5D.gif?imgmax=800" width="174" align="left" border="0" height="54" /&gt;&lt;/a&gt; &lt;strong&gt;Microsoft&lt;/strong&gt; web uygulama geliştiricileri için önemli bir haberin duyurusunu geçtiğimiz günlerde gerçekleştirdi. &lt;strong&gt;&lt;a href="http://en.wikipedia.org/wiki/Jquery" target="_blank"&gt;jQuery&lt;/a&gt;&lt;/strong&gt; adı verilen ve özellikle &lt;strong&gt;JavaScript&lt;/strong&gt; ile uygulama geliştiren web programcılarının yakından tanıdığı ücretsiz JavaScript kod kütüphanesinin artık &lt;strong&gt;Visual Studio&lt;/strong&gt;'nun bir parçası haline getirileceği ve &lt;strong&gt;ASP.NET&lt;/strong&gt; programcılarının bu aracı çok daha kolay şekilde kullanabileceğini belirtti. Bu haberlere göre jQuery artık Visual Studio'nun bir parçası olacak, gerek uygulamalara entegre edilmesi, gerek intelli-sense penceresindeki yazım desteği, gerekse dokümantasyonu açısından tam desteklenir hale gelecek.&lt;/p&gt;  &lt;p&gt;Aslında bu gelişmeye çokta şaşırdığımı söyleyemeyeceğim. Zira web dünyasındaki gelişmeleri yakından takip edenler jQuery kullanımının özellikle son aylarda çığ gibi büyüdüğünü, artık jQuery fanlarının dahi oluştuğunu görmüşlerdir. Bundan yaklaşık 2.5 ay önce yazdığım &lt;a href="http://umutluoglu.blogspot.com/2008/07/aspnet-ajax-roadmap-ve-aspnet-ajax-40.html" target="_blank"&gt;bir yazımda&lt;/a&gt; da ilerleyen zamanlarda &lt;strong&gt;ASP.NET AJAX&lt;/strong&gt;'ın jQuery'den etkilenerek daha da gelişeceğini belirtmiştim. Artık jQuery tamamen yapıyla bütünleşerek ASP.NET AJAX'ı çok daha kullanılır hale getirecektir.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;span style="color: rgb(213, 0, 0);"&gt;Peki nedir jQuery?&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;jQuery bir JavaScript kod kütüphanesidir. Ama öyle sıradan bir kütüphane değil, logodaki &lt;strong&gt;"write less, do more"&lt;/strong&gt; yani "daha az yaz, daha fazla iş yap" sloganını hakkıyla yerine getiren bir kütüphane! Yapısını ve örneklerini incelediğinizde tek bir satırlık kod ile bile HTML kodlarınıza hükmedebileceğinizi, dinamik olarak istemci tarafında JavaScript ile ilgili bir çok işlemi kolayca yapabilmenizi sağlayan bir araçtır. Yapısındaki nesneler aracılığıyla çok basit şekilde zor işleri yapabilmenizi, grafiksel olarak sayfalarınıza efektler uygulayabilmenizi, yine basit şekilde sayfanızı AJAX destekli şekilde çalıştırabilmenizi sağlayan bu kütüphaneyi ASP.NET ile birleştirdiğimizde karşımıza şöyle bir sonuç çıkacaktır: ASP.NET sunucu tarafında yapacağımız bir çok işlemi basite indirgemiş ve kolay yapılabilir hale getirmişti. ASP.NET AJAX ve jQuery de istemci tarafında yapacağımız işlemleri çok daha pratik şekilde yapabilmemizi sağlayacaktır.&lt;/p&gt;  &lt;p&gt;jQuery son yıllarda popüler hale gelen, hızlı ve az kod yazarak istemci tarafında işlemleri kolaylaştıran JavaScript kod kütüphaneleri furyasının en sevilen, en kullanılan ürünü olarak son bir yıl içerisinde adını oldukça duyurdu. Çok küçük boyutlu olmasına rağmen(15 Kb.) boyundan büyük işleri başarabilen bu kütüphane AJAX'ın hayatımıza fazlasıyla girmesinden sonra bu denli büyüdü ve artık ciddi bir marka haline geldi.&lt;/p&gt;  &lt;p&gt;Özellikle uygulamalarında JavaScript ve AJAX kullanan arkadaşlara tavsiyem jQuery'nin &lt;strong&gt;&lt;a href="http://www.jquery.com/" target="_blank"&gt;resmi web sitesi&lt;/a&gt;&lt;/strong&gt;ni ziyaret etmeniz ve Documentation ile Tutorials bölümlerini incelemeniz. Tabi ki bilgisayarınıza jQuery'i indirip ASP.NET uygulamalarınızda test etmeyi de unutmamak lazım:) Önümüzdeki günlerde fırsat bulursam jQuery ile ilgili yazılara blogumda daha sık yer vermeye çalışacağım.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-651931699131844151?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/651931699131844151/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=651931699131844151' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/651931699131844151'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/651931699131844151'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/10/jquery-artk-visual-studio-ile-btnleik.html' title='jQuery Artık Visual Studio ile Bütünleşik Hale Gelecek!'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/umutluoglu/SOMxdDfpPzI/AAAAAAAAAJQ/kRpjk-wvGdY/s72-c/logo_jquery_thumb%5B5%5D.gif?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-4372908393775558243</id><published>2008-09-25T23:32:00.001+03:00</published><updated>2008-09-25T23:46:52.664+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linq'/><category scheme='http://www.blogger.com/atom/ns#' term='sunum'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net mvc'/><title type='text'>Netron Techweek'deki Sunumlarım ve Örnek Kodlar</title><content type='html'>&lt;p&gt;Bu hafta içerisinde gerçekleşen ve benimde iki oturumda konuşmacı olarak yer aldığım Netron Techweek her sene olduğu gibi sektördeki önemli gelişmeleri takip edebilmek adına herkes için güzel bir etkinlik oldu. Özellikle ASP.NET MVC Framework oturumumda, hala gelişme aşamasında olan ve henüz tam bir ürün kimliğine bürünmemiş bir yapının bile katılanların ciddi anlamda ilgisini çekmesi ve olumlu tepkiler alması, ilerleyen günlerde MVC uygulamalarındaki artacak eğilimin bir işaretiydi. LINQ'in büyüleyici ortamının özellikle bu ortamı yeni tanıyanlarda bıraktığı izlenimler hakkında yorum dahi yapmama gerek yoktur diye düşünüyorum :)&lt;/p&gt;  &lt;p&gt;Aşağıdaki linklerde gerçekleştirdiğim sunumları ve örnek kod dosyalarını bulabilirsiniz.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.nedirtv.com/Files/etkinlikler/ASPNETMVC1/ASP.NET%20MVC.ppt"&gt;&lt;strong&gt;ASP.NET MVC Framework - Sunum Dosyası&lt;/strong&gt;&lt;/a&gt;   &lt;br /&gt;&lt;a href="http://www.nedirtv.com/Files/etkinlikler/ASPNETMVC1/MVCDemo.zip"&gt;&lt;strong&gt;ASP.NET MVC Framework - Örnek Kodlar&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.nedirtv.com/Files/etkinlikler/LINQ1/LINQ.ppt"&gt;&lt;strong&gt;LINQ Overview - Sunum Dosyası&lt;/strong&gt;&lt;/a&gt;   &lt;br /&gt;&lt;a href="http://www.nedirtv.com/Files/etkinlikler/LINQ1/LINQProjects.zip"&gt;&lt;strong&gt;LINQ Overview - Örnek Kodlar&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-4372908393775558243?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/4372908393775558243/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=4372908393775558243' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/4372908393775558243'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/4372908393775558243'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/09/netron-techweek-sunumlarm-ve-rnek.html' title='Netron Techweek&amp;#39;deki Sunumlarım ve Örnek Kodlar'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-3123577376936571603</id><published>2008-09-16T16:10:00.001+03:00</published><updated>2008-09-16T16:25:23.048+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='kişisel'/><category scheme='http://www.blogger.com/atom/ns#' term='linq'/><category scheme='http://www.blogger.com/atom/ns#' term='haberler'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net mvc'/><category scheme='http://www.blogger.com/atom/ns#' term='seminer'/><title type='text'>Netron Techweek Etkinliğinde Konuşmacıyım</title><content type='html'>&lt;p&gt;&lt;a href="http://lh3.ggpht.com/umutluoglu/SM-zOPsXUHI/AAAAAAAAAJE/RuqK_FePfKM/s1600-h/netron_techweek%5B9%5D.gif"&gt;&lt;img style="border: 0px none ;" alt="Netron Techweek" src="http://lh4.ggpht.com/umutluoglu/SM-zPobqfbI/AAAAAAAAAJI/aUety8d-Yrw/netron_techweek_thumb%5B5%5D.gif?imgmax=800" width="130" align="left" border="0" height="77" /&gt;&lt;/a&gt; Geleneksel hale gelen ve bilişim sektörünün en önemli etkinliklerinden olan &lt;strong&gt;Netron Techweek (Teknoloji Haftası)&lt;/strong&gt; bu yıl &lt;strong&gt;22-26 Eylül&lt;/strong&gt; tarihleri arasında Netron Altunizade Genel Merkezi'nde gerçekleşecek. Infrastructure ve Development kategorilerinde yirminin üzerinde oturumun olacağı bu beş günlük etkinlikte benim de iki farklı konuda sunumlarım gerçekleşecek. &lt;/p&gt;  &lt;p&gt;Gerçekleştireceğim sunum konuları ve zaman bilgilerini aşağıda bulabilirsiniz. Yine etkinlik ile ilgili detaylı bilgilere ve kayıt formuna erişmek için aşağıdaki linkleri kullanabilirsiniz. Bu önemli etkinliği kaçırmamanızı tavsiye ediyorum.&lt;/p&gt;  &lt;p&gt;Konuşmacı olduğum oturumlar:   &lt;br /&gt;   &lt;table cellpadding="3" cellspacing="0"&gt;&lt;tbody&gt;       &lt;tr&gt;         &lt;td&gt;&lt;strong&gt;Konu&lt;/strong&gt;&lt;/td&gt;          &lt;td&gt;&lt;strong&gt;Zaman&lt;/strong&gt;&lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td&gt;ASP.NET MVC Framework&lt;/td&gt;          &lt;td&gt;23 Eylül 2008 Salı / 14:30-16:30&lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td&gt;LINQ Overview&lt;/td&gt;          &lt;td&gt;24 Eylül 2008 Çarşamba / 14:30-16:30&lt;/td&gt;       &lt;/tr&gt;     &lt;/tbody&gt;&lt;/table&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.netron.com.tr/techweek2008/index.asp?cat=1" target="_blank"&gt;&lt;strong&gt;Etkinlik Takvimi&lt;/strong&gt;&lt;/a&gt;    &lt;br /&gt;&lt;a href="http://www.netron.com.tr/techweek2008/index.asp?cat=4" target="_blank"&gt;&lt;strong&gt;Kayıt Formu&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-3123577376936571603?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/3123577376936571603/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=3123577376936571603' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/3123577376936571603'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/3123577376936571603'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/09/netron-techweek-etkinliinde-konumacym.html' title='Netron Techweek Etkinliğinde Konuşmacıyım'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/umutluoglu/SM-zPobqfbI/AAAAAAAAAJI/aUety8d-Yrw/s72-c/netron_techweek_thumb%5B5%5D.gif?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-8661039873546020846</id><published>2008-09-09T23:07:00.007+03:00</published><updated>2008-11-21T00:49:33.406+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linq'/><category scheme='http://www.blogger.com/atom/ns#' term='c#'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL Server'/><title type='text'>LINQ to SQL'de Insert, Update ve Delete İşlemleri</title><content type='html'>&lt;img style="border: 0px none ; margin: 0pt 3px 3px 0pt; float: left;" src="http://2.bp.blogspot.com/_657dzC0AiLc/SMbh138q6SI/AAAAAAAAAI8/04S6kpS6iGw/s320/linq_to_sql.gif" alt="LINQ to SQL ile Insert,Update,Delete İşlemleri" id="BLOGGER_PHOTO_ID_5244127131787258146" border="0" /&gt;Bildiğiniz gibi LINQ adını verdiğimiz dile entegre sorgularla artık .NET ortamında koleksiyon tabanlı nesneleri sorgulayabiliyoruz. Buradaki sorgulamaların temel amacı normalde foreach döngüleri, if-else kontrol yapılarıyla yapabildiğimiz uzun ve karmaşık işlemleri tıpkı T-SQL'de olduğu gibi sade Select sorguları yazarak daha basit hale getirmektir. LINQ'in asıl çıkış noktası ise uygulama içerisinde büyük ve karmaşık olan veri nesnelerini (entity nesnelerini) kolay ve pratik şekilde sorgulanabilmesini sağlamak ve büyük çaplı projelerde yazılımcıların en büyük yüklerinden birisini hafifletmektir.  &lt;p&gt;&lt;span style="font-weight: bold;"&gt;LINQ to SQL&lt;/span&gt; ile ilgili olarak en çok sorulan sorulardan birisi de &lt;span style="font-weight: bold;"&gt;Insert&lt;/span&gt;, &lt;span style="font-weight: bold;"&gt;Update &lt;/span&gt;ve &lt;span style="font-weight: bold;"&gt;Delete&lt;/span&gt; işlemlerinin nasıl gerçekleştirilebileceği. LINQ ifadelerinde Insert, Update ve Delete gibi anahtar kelimelerle sorgular yazılamadığını söylemeye gerek yok sanırım:) Dolayısıyla LINQ to SQL'de amaç veri nesneleriyle çalışmak ise bir şekilde bu tip işlemleri de gerçekleştirebilmek gerekecektir. &lt;strong&gt;LINQ to SQL Classes (.dbml)&lt;/strong&gt; dosyaları veritabanında yer alan veri nesnelerini doğrudan uygulamamıza class'lar olarak aktarmamızı sağlamaktadır. Örneğin &lt;strong&gt;Northwind&lt;/strong&gt; veritabanındaki &lt;strong&gt;Product&lt;/strong&gt; tablosunu uygulamamızda veri class'ı olarak oluşturduğumuzda &lt;strong&gt;DataContext&lt;/strong&gt; nesnesinin içerisindeki &lt;strong&gt;Products&lt;/strong&gt; özelliği(property) Products tablosundaki ürünleri koleksiyon olarak döndürecektir. İşte bu property'nin bazı metotları bizim Insert, Update ve Delete gibi işlemleri gerçekleştirebilmemizi sağlayacaktır. Bu metotlardan;&lt;/p&gt;  &lt;p&gt;    - &lt;strong&gt;InsertOnSubmit&lt;/strong&gt;, Insert işlemini&lt;br /&gt;- &lt;strong&gt;DeleteOnSubmit&lt;/strong&gt;, Delete işlemini&lt;/p&gt;  &lt;p&gt;gerçekleştirebilmektedir. Peki Update işlemi nerede? Update işlemini ise LINQ sorgusu sonucundan gelen kayıt veya kayıtların değerlerini değiştirerek gerçekleştirebileceğiz. Buradaki her üç işleminde sonuçlarının veritabanına aktarılabilmesi için DataContext nesnesinin &lt;strong&gt;SubmitChanges&lt;/strong&gt; isimli metodunun çalıştırılması yeterli olacaktır. Aşağıdaki kod parçalarında LINQ to SQL'de veri ekleme, silme ve güncelleme işlemlerinin nasıl yapılabileceği görülmektedir. Kodlarda yer alan &lt;span style="font-weight: bold;"&gt;northWind&lt;/span&gt; adındaki nesne DataContext nesnemizdir.&lt;br /&gt;&lt;/p&gt;  &lt;p class="csharpcode"&gt;&lt;span class="str"&gt;Product&lt;/span&gt; eklenecekUrun = &lt;span class="kwrd"&gt;new&lt;/span&gt; &lt;span class="str"&gt;Product&lt;/span&gt;() { ProductName=&lt;span class="attr"&gt;"Acer Aspire 5100"&lt;/span&gt;, UnitPrice=1290, UnitsInStock=15, CategoryID=9 };&lt;br /&gt;northWind.Products.InsertOnSubmit(eklenecekUrun); &lt;em&gt;&lt;span style="color: rgb(0, 128, 0);"&gt;// Eklenecekler listesine yeni bir ürün eklendi&lt;/span&gt;&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="str"&gt;Product&lt;/span&gt; guncellenecekUrun = northWind.Products.First(u =&amp;gt; u.ProductID == 69);&lt;br /&gt;guncellenecekUrun.ProductName = &lt;span class="attr"&gt;"HP Pavilion 3355"&lt;/span&gt;; &lt;em&gt;&lt;span style="color: rgb(0, 128, 0);"&gt;// Seçilen ürünün ProductName özelliği değiştirildi&lt;br /&gt;&lt;/span&gt;&lt;/em&gt;&lt;br /&gt;&lt;span class="str"&gt;Product&lt;/span&gt; silinecekUrun = northWind.Products.First(u =&amp;gt; u.ProductID == 79);&lt;br /&gt;northWind.Products.DeleteOnSubmit(silinecekUrun); &lt;span style="color: rgb(0, 128, 0);"&gt;&lt;em&gt;// Seçilen ürünü silinecekler listesine at&lt;br /&gt;&lt;/em&gt;&lt;/span&gt;&lt;br /&gt;northWind.SubmitChanges(); &lt;em&gt;&lt;span style="color: rgb(0, 128, 0);"&gt;// Yukarıda yapılan güncellemeler veritabanına gönderildi&lt;/span&gt;&lt;/em&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-8661039873546020846?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/8661039873546020846/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=8661039873546020846' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/8661039873546020846'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/8661039873546020846'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/09/linq-to-sql-insert-update-ve-delete.html' title='LINQ to SQL&amp;#39;de Insert, Update ve Delete İşlemleri'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_657dzC0AiLc/SMbh138q6SI/AAAAAAAAAI8/04S6kpS6iGw/s72-c/linq_to_sql.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-5460996309979551900</id><published>2008-09-05T16:24:00.002+03:00</published><updated>2008-11-21T00:48:10.236+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ado.net'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL Server'/><title type='text'>CLR SQL ile Hazırlanan Nesneyi Visual Studio'da Debug Etmek</title><content type='html'>&lt;p&gt;&lt;strong&gt;SQL Server 2005&lt;/strong&gt; ve &lt;strong&gt;ADO.NET 2.0&lt;/strong&gt; ile gelen yeniliklerden sonra çoğunuzunda bildiği gibi .NET ortamında hazırladığınız nesneleri SQL Server sunucusu üzerinde &lt;span style="font-weight: bold;"&gt;CLR &lt;/span&gt;&lt;em&gt;(Common Language Runtime)&lt;/em&gt; desteğiyle çalışmasını sağlayabiliyoruz. Oluşturulan bu nesnelerin IL çıktıları .dll'dir, dolayısıyla ilk bakışta nesneleri kodlama aşamasında nasıl debug işlemine tabi tutacağımız bizler için soru işareti olabilir. Bu başlıkta .NET tabanlı bir dilde yazdığımız &lt;span style="font-weight: bold;"&gt;CLR SQL&lt;/span&gt; kodlarımızın çalışmasını debug etmek, kodların takibini ve analizini yapmak için oluşturulan projede nasıl bir yol izleyeceğimizi anlatmaya çalışacağım. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/umutluoglu/SME2H1YMZmI/AAAAAAAAAIk/DVuSu9VuzIw/clrsql_debug_image2%5B13%5D.gif"&gt;&lt;img style="margin: 0px 5px 0px 0px;" alt="Test.sql dosyasına eklenen SQL cümlesi" src="http://lh6.ggpht.com/umutluoglu/SME2IZgT3uI/AAAAAAAAAIo/GIqSYoQoADc/clrsql_debug_image2_thumb%5B11%5D.gif" width="327" align="left" height="122" /&gt;&lt;/a&gt;"SQL Server Projects" şablonunu oluşturduğunuzda proje içerisinde &lt;strong&gt;Test Script&lt;/strong&gt; adında bir klasör ve içerisinde örnek kodları içeren &lt;strong&gt;Test.sql&lt;/strong&gt; adında bir dosya bulunmaktadır. Debug işlemi için öncelikli olarak nesneyi çalıştıracak bir SQL ifadesine ihtiyacımız olacaktır. Bu dosya SQL ifadesinin veya ifadelerinin saklanacağı yerdir. Nesneyi oluşturduktan sonra öncelikli olarak bu dosyaya nesneyi test etmemizi sağlayan SQL cümlesini ekliyoruz.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/umutluoglu/SME2JWbYzUI/AAAAAAAAAIs/QiduQNay-AY/clrsql_debug_image3%5B16%5D.gif"&gt;&lt;img alt="clrsql_debug_image3" src="http://lh4.ggpht.com/umutluoglu/SME2JyPjQoI/AAAAAAAAAIw/HLNk6Ms1syU/clrsql_debug_image3_thumb%5B10%5D.gif" width="230" align="right" height="217" /&gt;&lt;/a&gt; Bu işlemin ardından Test.sql dosyasını projemizin varsayılan script dosyası olarak seçmemiz gerekiyor. Solution Explorer'da dosyanın üzerine sağ tıkladığımızda karşımıza çıkan &lt;strong&gt;Set as Default Debug Script&lt;/strong&gt; seçeneğinden dosyayı varsayılan debug dosyası olarak belirliyoruz. İlgili seçenek sağ kısımda yer alan resimde görülmektedir.&lt;/p&gt;  &lt;p&gt;Nesneyi oluşturduktan sonra debug işlemini başlatacağımız satıra breakpoint ekliyoruz. Bu işlemin ardından projemizi yayınlayıp IL çıktısını üretmemiz ve çalıştırmamız gerekecektir. Bu işlem için Solution Explorer'da projemizin üzerine sağ tıklayıp &lt;strong&gt;Deploy&lt;/strong&gt; seçeneğini seçiyoruz. &lt;/p&gt;  &lt;p&gt;Artık projeyi debug modunda çalıştırıp kodların adım adım takibini yapabiliriz. Bu işlem için yine Solution Explorer'dan az önce debug dosyası olarak ayarladığımız &lt;strong&gt;Test.sql&lt;/strong&gt; dosyasına sağ tıklayıp &lt;strong&gt;Debug Script&lt;/strong&gt; seçeneğine tıklıyoruz. Dosya içerisindeki sorgu çalıştırılacak ve derleyici seçtiğimiz satıra geldiğinde Visual Studio debug moda geçecektir. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/umutluoglu/SME2Kui4KqI/AAAAAAAAAI0/T3MTj32xPXo/clrsql_debug_image4%5B9%5D.gif"&gt;&lt;img alt="clrsql_debug_image4" src="http://lh3.ggpht.com/umutluoglu/SME2LoDjn7I/AAAAAAAAAI4/Q29dBp7HYtI/clrsql_debug_image4_thumb%5B7%5D.gif" width="543" height="177" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Bu şekilde bir CLR SQL nesnesini oluşturan kodların debug edilmesi sağlanabilir. Özellikle karmaşık User Defined Function, Stored Procedure ve Trigger oluşturduğumuz durumlarda nesneyi sürekli SQL Server'a taşımak, burada çalışma sonucuna göre tekrar Visual Studio'ya dönüp değişiklikleri yapmak uzun ve çözümü zor bir yol olabilir. İşte bu tip durumlarda nesnenin SQL Server'a gitmeden doğrudan CLR üzerinde çalışmasını debug edebilmek biz programcıların işini oldukça kolaylaştıracaktır.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-5460996309979551900?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/5460996309979551900/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=5460996309979551900' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/5460996309979551900'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/5460996309979551900'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/09/clr-sql-ile-hazrlanan-nesneyi-visual.html' title='CLR SQL ile Hazırlanan Nesneyi Visual Studio&amp;#39;da Debug Etmek'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/umutluoglu/SME2IZgT3uI/AAAAAAAAAIo/GIqSYoQoADc/s72-c/clrsql_debug_image2_thumb%5B11%5D.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-3155199022828997987</id><published>2008-08-06T00:01:00.004+03:00</published><updated>2008-08-06T00:29:46.035+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='kişisel'/><category scheme='http://www.blogger.com/atom/ns#' term='linq'/><category scheme='http://www.blogger.com/atom/ns#' term='haberler'/><category scheme='http://www.blogger.com/atom/ns#' term='sunum'/><category scheme='http://www.blogger.com/atom/ns#' term='seminer'/><title type='text'>LINQ Sunumu ve Örnek Kodlar</title><content type='html'>&lt;p&gt;Geçtiğimiz pazar günü &lt;strong&gt;INETA Summer Hit&lt;/strong&gt;'in son gününde &lt;strong&gt;C# 3.0 ve LINQ&lt;/strong&gt; sunumunu gerçekleştirdim. Sürenin az olması nedeniyle LINQ to SQL ve LINQ to XML konularını derinlemesine anlatma şansım olmadı ama güzel ve iyi izlenimler bırakan bir sunum gerçekleştirmişimdir diye umuyorum. Seminerde öyle bir kod arşivi üzerinden demolar gerçekleştirmişim ki; sadece bugün 4-5 farklı kişiden bu kodlara ulaşmak için mailler aldım :) Aşağıdaki linklerden etkinlikte kullandığım sunumu ve örnek kodları içeren demo dosyasını indirebilirsiniz.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;a href="http://www.nedirtv.com/files/etkinlikler/3Agustos_YTU/LINQ_Sunum.ppt" target="_blank"&gt;LINQ Sunumu&lt;/a&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;a href="http://www.nedirtv.com/files/etkinlikler/3Agustos_YTU/LINQ_Demolar.zip" target="_blank"&gt;LINQ Demolar&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Ve etkinlikten kalan iki hatıra fotoğrafı...&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/umutluoglu/SJi9rks7kTI/AAAAAAAAAIU/OJRNGFCgZ3E/s1600-h/ineta_summer_hit_cikis%5B2%5D.jpg"&gt;&lt;img style="border: 0px none ;" alt="ineta_summer_hit_cikis" src="http://lh3.ggpht.com/umutluoglu/SJi9sRVVMtI/AAAAAAAAAIY/qfX2DaKSfcQ/ineta_summer_hit_cikis_thumb.jpg?imgmax=800" border="0" height="131" width="244" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://lh3.ggpht.com/umutluoglu/SJi9s5rX_II/AAAAAAAAAIc/du19UeUQAQ8/s1600-h/ineta_summer_hit_sunum%5B2%5D.jpg"&gt;&lt;img style="border: 0px none ;" alt="ineta_summer_hit_sunum" src="http://lh4.ggpht.com/umutluoglu/SJi9tqJJcJI/AAAAAAAAAIg/LqqNHbs34Kc/ineta_summer_hit_sunum_thumb.jpg?imgmax=800" border="0" height="161" width="244" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;em&gt;Bu güzel etkinliği düzenleyen başta &lt;a href="http://daron.yondem.com/tr" target="_blank"&gt;&lt;span style="font-weight: bold;"&gt;Daron Yöndem&lt;/span&gt;&lt;/a&gt; ile &lt;a href="http://www.alibabaoglan.com/" target="_blank"&gt;&lt;span style="font-weight: bold;"&gt;Ali Rıza Babaoğlan&lt;/span&gt;&lt;/a&gt;'a ve emeği geçen tüm arkadaşlara teşekkürlerimi buradan da sunmak isterim.&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;Not: Askerlik nedeniyle biraz uzak kaldığım yeni teknolojilere yeni yeni ısınmaya başlıyorum. Bundan sonra blogumda &lt;strong&gt;C# 3.0&lt;/strong&gt;, &lt;strong&gt;LINQ&lt;/strong&gt;, &lt;strong&gt;MVC&lt;/strong&gt; ve &lt;strong&gt;WPF&lt;/strong&gt; gibi konularda daha sık yazılar yazmaya çalışacağım. Beni takip etmeye devam edin...&lt;/em&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-3155199022828997987?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/3155199022828997987/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=3155199022828997987' title='7 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/3155199022828997987'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/3155199022828997987'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/08/linq-sunumu-ve-rnek-kodlar.html' title='LINQ Sunumu ve Örnek Kodlar'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/umutluoglu/SJi9sRVVMtI/AAAAAAAAAIY/qfX2DaKSfcQ/s72-c/ineta_summer_hit_cikis_thumb.jpg?imgmax=800' height='72' width='72'/><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-8787311840949786664</id><published>2008-07-26T18:32:00.001+03:00</published><updated>2008-11-21T00:51:25.305+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='asp.net'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net mvc'/><title type='text'>ASP.NET'te Gelecek WebForm'larında mı, Yoksa MVC'de mi?</title><content type='html'>&lt;p&gt;&lt;img style="border: 0px none ;" alt="WebForms vs. ASP.NET MVC" src="http://lh4.ggpht.com/umutluoglu/SItRXNl4S8I/AAAAAAAAAIQ/nIdTtv4vUWQ/webform_vs_mvc_thumb%5B10%5D.gif?imgmax=800" width="244" align="left" border="0" height="80" /&gt;Son yıllarda web programlama dünyasında yaygınlaşan &lt;strong&gt;MVC&lt;/strong&gt; uygulama modeli yavaş yavaş &lt;span style="font-weight: bold;"&gt;ASP.NET&lt;/span&gt; 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 &lt;strong&gt;"Gelecek hangisinde? WebForm'larında mı, yoksa MVC Framework'te mi?"&lt;/strong&gt; Hatta benim kafamda oluşan önemli sorulardan birisi de &lt;strong&gt;"Acaba Microsoft gelecekte WebForm'larını bırakıp ASP.NET'te MVC modelini mi kullanabilir mi?"&lt;/strong&gt; idi birkaç gün öncesine kadar...&lt;/p&gt;  &lt;p&gt;Geçtiğimiz günlerde &lt;strong&gt;&lt;a href="http://www.misfitgeek.com/" target="_blank"&gt;Joe Stagner&lt;/a&gt;&lt;/strong&gt;'ın blogunda okuduğum &lt;a href="http://www.misfitgeek.com/CommentView,guid,e4a46d86-b618-4850-a617-7d7bbb46877f.aspx" target="_blank"&gt;bir haber&lt;/a&gt; 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 &lt;u&gt;ana platform olacağını&lt;/u&gt;, 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ı? &lt;/p&gt;  &lt;p&gt;Bu sorunun cevabını bulabilmek için öncelikle &lt;strong&gt;ASP.NET WebForm&lt;/strong&gt;'larının ve &lt;strong&gt;ASP.NET MVC Framework&lt;/strong&gt;'ün ne gibi özelliklere sahip olduğunu, avantaj ve dezavantajlarının neler olduğunu iyi çözümlemek gerekir. MVC Framework ASP.NET uygulamalarına şu anki anlayışa biraz aykırı gelebilecek, ASP'de olduğu gibi HTML ile içiçe ve daha fazla kod yazılmasını gerektiren, durum verisinin saklanmasını zorlaştıran, diğer yandan da programcının web sayfasına daha fazla hakim olmasını sağlayan, control-view mekanizmasını kendi istediği gibi geliştirebileceği ve arama motorlarının çok sevdiği az karmaşık URL'ler oluşturulmasını sağlayan bir uygulama modelidir. MVC Framework web programlama hayatımıza iyiden iyiye oturan olay tabanlı(event-driven) programlamadan, ViewState ve PostBack'ten uzak bir ortam sunuyor. Bu gelişme kimilerine göre çok olumlu iken, kimilerine ise "Aman benden uzak dursun" dedirtiyor. WebForm'ları bize o kadar rahat bir programlama ortamı sunuyor ki, MVC'ye geçiş biraz zor geliyor sanırım. Fakat MVC Framework'ün özellikle hız, performans, arama motorlarına tam uyumluluğun önemli olduğu, uzun soluklu kurumsal projelerde çok sık ihtiyaç olacağı da bir gerçek.&lt;/p&gt;  &lt;p&gt;Konumuzun başlığına dönecek olursak; Gelecek WebForms da mı, yoksa MVC Framework'te mi, benim şahsi düşüncem gelecek dün olduğu gibi yine WebForm'larında(ki Microsoft'un dediklerini tercüme etmiş oluyorum), fakat MVC Framework önümüzdeki yıllarda iyi bir web programcısının mutlaka bilmesi gereken bir uygulama deseni olacaktır. Microsoft'un şu anki stratejisi &lt;strong&gt;ASP.NET WebForm'ların üzerinde gelişmeye ve zenginleşmeye devam edecektir, fakat MVC Framework'te programcılara ikinci bir seçenek olarak sunulacaktır.&lt;/strong&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-8787311840949786664?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/8787311840949786664/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=8787311840949786664' title='2 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/8787311840949786664'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/8787311840949786664'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/07/aspnette-gelecek-webformlarnda-m-yoksa.html' title='ASP.NET&apos;te Gelecek WebForm&apos;larında mı, Yoksa MVC&apos;de mi?'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/umutluoglu/SItRXNl4S8I/AAAAAAAAAIQ/nIdTtv4vUWQ/s72-c/webform_vs_mvc_thumb%5B10%5D.gif?imgmax=800' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-5018992011254226004</id><published>2008-07-22T20:46:00.001+03:00</published><updated>2008-10-01T11:20:02.046+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='asp.net ajax'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net mvc'/><category scheme='http://www.blogger.com/atom/ns#' term='jQuery'/><title type='text'>ASP.NET AJAX Roadmap ve ASP.NET AJAX 4.0 Preview 1</title><content type='html'>&lt;p&gt;Geçtiğimiz günlerde &lt;a href="http://www.codeplex.com/" target="_blank"&gt;&lt;strong&gt;CodePlex&lt;/strong&gt;&lt;/a&gt;'te yayınlanan ASP.NET AJAX'ın yol haritasının ardından dün de &lt;strong&gt;ASP.NET AJAX 4.0&lt;/strong&gt;'ın ilk önizleme sürümü duyuruldu. ASP.NET AJAX ekibinin önümüzdeki aylarda web uygulamalarında biraz daha istemci tabanlı çalışacak bileşenler geliştirme yolunda ilerlediğini söyleyebiliriz. İstemci tarafında çalışacak veri-veri kaynağı (data-data source) kontrolleri ile istemci tarafında içeriğin render edilmesi fikirleri Preview 1 sürümünde zaten gerçekleşen birkaç adım. Animasyon ve sürükle-bırak (drag-drop) özellikleri, yine &lt;strong&gt;ASP.NET MVC Framework&lt;/strong&gt; için şu anda olmayan ASP.NET AJAX MVC desteği ilerleyen günlerde bizi bekleyen yeniliklerden sadece birkaç tanesi. Sanırım sonraki sürümlerde ASP.NET AJAX'ın biraz da &lt;strong&gt;&lt;a href="http://en.wikipedia.org/wiki/JQuery" target="_blank"&gt;JQuery&lt;/a&gt;&lt;/strong&gt;'den etkilenerek bizleri daha da heyecanlandıracak yeniliklerle karşımıza gelmesi hiç birimizi şaşırtmayacaktır(En azından beni). Artık HTML kodları içerisine bol bol inline kod yazılacak AJAX uygulamaları bizi bekliyor diyebilirim.&lt;/p&gt;  &lt;p&gt;ASP.NET AJAX yol haritası ve ASP.NET AJAX 4.0 Preview 1 ile ilgili dosya ve dökümanları aşağıdan, CodePlex sitesindeki linklerinden indirebilirsiniz. Yine aynı sayfa üzerinden proje ile yapılan yenilikleri takip edebilirsiniz.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;a href="http://www.codeplex.com/aspnet/Release/ProjectReleases.aspx?ReleaseId=14924" target="_blank"&gt;ASP.NET AJAX Roadmap&lt;/a&gt;&lt;/strong&gt; &lt;br /&gt;&lt;strong&gt;&lt;a href="http://www.codeplex.com/aspnet/Release/ProjectReleases.aspx?ReleaseId=15511" target="_blank"&gt;ASP.NET AJAX 4.0 CodePlex Preview 1&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-5018992011254226004?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/5018992011254226004/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=5018992011254226004' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/5018992011254226004'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/5018992011254226004'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/07/aspnet-ajax-roadmap-ve-aspnet-ajax-40.html' title='ASP.NET AJAX Roadmap ve ASP.NET AJAX 4.0 Preview 1'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-568922870388144321</id><published>2008-07-17T14:08:00.003+03:00</published><updated>2008-07-17T14:23:39.304+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='haberler'/><category scheme='http://www.blogger.com/atom/ns#' term='seminer'/><title type='text'>Yazılımcılar için Yaz Etklinliği: INETA Summet Hit</title><content type='html'>&lt;p&gt;&lt;strong&gt;&lt;a href="http://lh6.ggpht.com/umutluoglu/SH8oL5Ajg9I/AAAAAAAAAIE/nom4PKZshzQ/s1600-h/inetasummerhit%5B4%5D.jpg"&gt;&lt;img style="border: 0px none ;" alt="inetasummerhit" src="http://lh4.ggpht.com/umutluoglu/SH8oMg7Wc7I/AAAAAAAAAII/mhIhIDTiSE0/inetasummerhit_thumb%5B2%5D.jpg?imgmax=800" border="0" height="60" width="468" /&gt;&lt;/a&gt; &lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;INETA Türkiye&lt;/strong&gt; olarak güzel bir yaz etkinliği ile karşınızdayız. &lt;strong&gt;2-3 Ağustos 2008&lt;/strong&gt; tarihlerinde &lt;strong&gt;Yıldız Teknik Üniversitesi Auditorium&lt;/strong&gt;'da gerçekleşecek olan iki günlük etkinlikte birçok önemli konu ile ilgili seminerleri ve konuşmaları bulabileceksiniz. 3 Ağustos'ta 15:00-17:30 saatleri arasında benim de &lt;strong&gt;LINQ (Language Integrated Query)&lt;/strong&gt; sunumumun olacağı bu etkinliğe ilgilenen herkesi bekliyoruz.&lt;/p&gt;  &lt;p&gt;Etkinlikle ilgili bilgiler ve kayıt işlemi için &lt;strong&gt;&lt;a href="http://tinyurl.com/inetasummerhit" target="_blank"&gt;bu linkten&lt;/a&gt;&lt;/strong&gt; faydalanabilirsiniz.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-568922870388144321?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/568922870388144321/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=568922870388144321' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/568922870388144321'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/568922870388144321'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/07/yazlmclar-iin-yaz-etklinlii-ineta.html' title='Yazılımcılar için Yaz Etklinliği: INETA Summet Hit'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/umutluoglu/SH8oMg7Wc7I/AAAAAAAAAII/mhIhIDTiSE0/s72-c/inetasummerhit_thumb%5B2%5D.jpg?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-5223108310545042617</id><published>2008-07-10T21:37:00.003+03:00</published><updated>2008-11-21T00:57:23.571+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='asp.net 2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='gridview'/><category scheme='http://www.blogger.com/atom/ns#' term='veri kontrolleri'/><title type='text'>GridView'da Silme ve Güncelleme İşlemi Onayı</title><content type='html'>&lt;p&gt;&lt;span style="font-weight: bold;"&gt;GridView &lt;/span&gt;kontrolünde &lt;span style="font-weight: bold;"&gt;silme &lt;/span&gt;ve &lt;span style="font-weight: bold;"&gt;güncelleme &lt;/span&gt;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 &lt;span style="font-weight: bold;"&gt;Update &lt;/span&gt;ve &lt;span style="font-weight: bold;"&gt;Delete &lt;/span&gt;işlemlerinin kullanıcıdan onay alarak gerçekleştirilmesini sağlayabiliriz. &lt;/p&gt;  &lt;p&gt;İlk adımda Update ve Delete butonlarımızın bulunduğu &lt;span style="font-weight: bold;"&gt;CommandField&lt;/span&gt;'ı &lt;span style="font-weight: bold;"&gt;TemplateField&lt;/span&gt;'a dönüştürmek gerekecektir. Böylece artık Update ile Delete butonlarına erişebilir, gerekli istemci olayına istediğimiz &lt;span style="font-weight: bold;"&gt;JavaScript &lt;/span&gt;kodunu ekleyebiliriz. GridView'in smart tag ikonundan &lt;span style="font-weight: bold;"&gt;Edit Columns&lt;/span&gt; linkine tıklayıp açılan pencereden &lt;strong&gt;CommanField&lt;/strong&gt; kolonunu seçmeli ve sağ kısımda yer alan Properties penceresinin altındaki &lt;strong&gt;Convert this field into a TemplateField&lt;/strong&gt; 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. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/umutluoglu/SHZW8QLSJgI/AAAAAAAAAH0/Vtwt-XwQDgQ/s1600-h/gridview_templatefield%5B9%5D.gif"&gt;&lt;img alt="Gridview - Kolonu templatefielda çevirme" src="http://lh4.ggpht.com/umutluoglu/SHZW898aDiI/AAAAAAAAAH4/L3KUZVCeIXM/gridview_templatefield_thumb%5B7%5D.gif?imgmax=800" width="400" border="0" height="115" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;İkinci adımda ise gerekli butonun &lt;strong&gt;OnClientClick&lt;/strong&gt; olayına ufak bir JavaScript kodu eklememiz gerekecektir. Böylece onay işleminde sunucuya gidilmeden, istemci tarafında yapılacak ve gereksiz bir postback işlemi de engellenmiş olacaktır. Aşağıda Delete butonuna tıklandığında kullanıcıdan onay alma işlemini gerçekleştirecek kod parçası yer almaktadır.&lt;/p&gt;  &lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;ItemTemplate&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;asp:LinkButton&lt;/span&gt; &lt;span class="attr"&gt;ID&lt;/span&gt;&lt;span class="kwrd"&gt;="LinkButton1"&lt;/span&gt; &lt;span class="attr"&gt;runat&lt;/span&gt;&lt;span class="kwrd"&gt;="server"&lt;/span&gt; &lt;span class="attr"&gt;CausesValidation&lt;/span&gt;&lt;span class="kwrd"&gt;="False"&lt;/span&gt;&lt;br /&gt;&lt;span class="attr"&gt;CommandName&lt;/span&gt;&lt;span class="kwrd"&gt;="Edit"&lt;/span&gt; &lt;span class="attr"&gt;Text&lt;/span&gt;&lt;span class="kwrd"&gt;="Değiştir"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;asp:LinkButton&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;span class="attr"&gt;&amp;amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;strong&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;asp:LinkButton&lt;/span&gt;&lt;/strong&gt; &lt;span class="attr"&gt;ID&lt;/span&gt;&lt;span class="kwrd"&gt;="LinkButton2"&lt;/span&gt; &lt;span class="attr"&gt;runat&lt;/span&gt;&lt;span class="kwrd"&gt;="server"&lt;/span&gt; &lt;span class="attr"&gt;CausesValidation&lt;/span&gt;&lt;span class="kwrd"&gt;="False"&lt;/span&gt;&lt;br /&gt;&lt;strong&gt;&lt;span class="attr"&gt;CommandName&lt;/span&gt;&lt;span class="kwrd"&gt;="Delete"&lt;/span&gt;&lt;/strong&gt; &lt;span class="attr"&gt;Text&lt;/span&gt;&lt;span class="kwrd"&gt;="Sil"&lt;/span&gt;&lt;br /&gt;&lt;strong&gt;&lt;span class="attr"&gt;OnClientClick&lt;/span&gt;&lt;span class="kwrd"&gt;="return confirm('Silmek istediğinizden emin misiniz?');"&lt;/span&gt;&lt;/strong&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;asp:LinkButton&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;ItemTemplate&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;Basit iki işlemin ardında gridview oldukça kullanışlı bir hale gelebiliyor. Sonuç aşağıdaki gibi...&lt;br /&gt;&lt;p&gt;&lt;a href="http://lh6.ggpht.com/umutluoglu/SHZW9i09W3I/AAAAAAAAAH8/kK8JwphDFxA/s1600-h/gridview_silme_onay%5B4%5D.gif"&gt;&lt;img style="border: 0px none ;" alt="Gridview - Silme işlemi için onay" src="http://lh4.ggpht.com/umutluoglu/SHZW-ATRmuI/AAAAAAAAAIA/Q6zJaqsnwfU/gridview_silme_onay_thumb%5B2%5D.gif?imgmax=800" width="425" border="0" height="226" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-5223108310545042617?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/5223108310545042617/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=5223108310545042617' title='5 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/5223108310545042617'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/5223108310545042617'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/07/gridview-silme-ve-gncelleme-ilemi-onay.html' title='GridView&amp;#39;da Silme ve Güncelleme İşlemi Onayı'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/umutluoglu/SHZW898aDiI/AAAAAAAAAH4/L3KUZVCeIXM/s72-c/gridview_templatefield_thumb%5B7%5D.gif?imgmax=800' height='72' width='72'/><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-8506513779415944818</id><published>2008-05-20T21:32:00.002+03:00</published><updated>2008-05-20T21:58:54.436+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL Server'/><title type='text'>VS 2008 ile SQL Server 2005 Kurulumunda Problem ve Çözümü</title><content type='html'>Bugün bilgisayarıma Windows XP'yi yeniden kurdum. &lt;span style="font-weight: bold;"&gt;Visual Studio 2008&lt;/span&gt; ve &lt;span style="font-weight: bold;"&gt;SQL Server 2005&lt;/span&gt;'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:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);"&gt;Sorun:&lt;/span&gt; Visual Studio 2008'i SQL Server 2005'ten &lt;u&gt;önce kurduğunuzda&lt;/u&gt; SQL Server sunucu olarak bilgisayarınıza kurulmuş olsa da, beraberinde gelen bileşenlerin kurulumu gerçekleşmiyor.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 204, 0);"&gt;Çözüm-1:&lt;/span&gt; Önce SQL Server 2005'i, ardından Visual Studio 2008'i kurun.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 204, 0);"&gt;Çözüm-2:&lt;/span&gt; Çözüm-1'deki sıranın tersinde kurulum yaptıysanız; SQL Server kurulum CD'sinden &lt;span style="font-weight: bold;"&gt;Tools &lt;/span&gt;klasörünün altındaki &lt;span style="font-weight: bold;"&gt;setup.exe&lt;/span&gt;'yi Command Prompt'tan aşağıdaki parametreleri kullanarak çalıştırın. Açılan kurulum penceresinden de &lt;span style="font-weight: bold;"&gt;Client Components&lt;/span&gt; ve &lt;span style="font-weight: bold;"&gt;Documentation, Samples and...&lt;/span&gt; seçeneğinden gerekli bileşenleri seçerek güncelleme kurulumunu tamamlayın.&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Command Prompt'ta yazılacak komut:&lt;/span&gt; &lt;span style="font-weight: bold;"&gt;start /wait setup.exe SKUUPGRADE=1&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Gerekli bileşenler artık bilgisayarınıza kurulacaktır.&lt;br /&gt;&lt;br /&gt;Not: &lt;span style="font-style: italic;"&gt;Gerçekleştirdiğim kurulum Windows XP Professional işletim sistemi üzerinde &lt;span style="font-weight: bold;"&gt;Visual Studio 2008 Team System Edition&lt;/span&gt; ve &lt;span style="font-weight: bold;"&gt;SQL Server 20005 Developer Edition&lt;/span&gt; sürümleri ile yapıldı.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-8506513779415944818?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/8506513779415944818/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=8506513779415944818' title='2 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/8506513779415944818'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/8506513779415944818'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/05/vs-2008-ile-sql-server-2005-kurulumunda.html' title='VS 2008 ile SQL Server 2005 Kurulumunda Problem ve Çözümü'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-4698235531706913599</id><published>2008-05-18T20:32:00.002+03:00</published><updated>2008-05-18T20:47:50.227+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='kişisel'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net ajax'/><title type='text'>Makaleler E-Kitabım</title><content type='html'>&lt;p&gt;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ı &lt;strong&gt;&lt;a href="http://www.nedirtv.com/Files/Makalelerim.pdf" target="_blank"&gt;bu linkten&lt;/a&gt;&lt;/strong&gt; 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.&lt;/p&gt;  &lt;p&gt;E-kitabımı zaman içerisinde yeni makalelerimle güncellemeye çalışacağım. Bu başlıktaki linkten veya &lt;strong&gt;&lt;a href="http://www.umutluoglu.com/" target="_blank"&gt;www.umutluoglu.com&lt;/a&gt;&lt;/strong&gt; adresinden güncel versiyonunu takip edebilirsiniz.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-4698235531706913599?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/4698235531706913599/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=4698235531706913599' title='1 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/4698235531706913599'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/4698235531706913599'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/05/makaleler-e-kitabm.html' title='Makaleler E-Kitabım'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-7354317434034855959</id><published>2008-05-16T22:14:00.000+03:00</published><updated>2008-05-16T22:20:59.968+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='kişisel'/><title type='text'>Askerlik Görevim Sona Erdi</title><content type='html'>Askerlik maceram bugün sona erdi. Bu sabah 1.5 saatlik uçak yolculuğunun ardından Elazığ'a hoşçakal dedim ve İstanbul'a 5 ay 5 gün sonra ayak bastım. İnsanın tekrar sivil hayata dönmesi, ailesine, sevdiklerine (ve dizüstü bilgisayarına) kavuşması kelimelerle anlatalımayacak kadar güzel bir duygu!&lt;br /&gt;&lt;br /&gt;Elazığ'da Jandarma Komando Taburu'nda başlayan askerliğimin usta birliğini 8.Kolordu Komutanlığı Askeri Mahkemesi'nde tamamladım. Oldukça güzel dostluklar edindiğim bu beş aylık maceramda sivil hayatta belki de 1-2 yılda göremeyeceğim tecrübeler edindim. 26 yaşında asker olsam da, askerliğin insanın olgunlaşma sürecinde oldukça önemli bir yeri olduğunu görmüş oldum.&lt;br /&gt;&lt;br /&gt;Blogumdan da takip ettiğiniz üzere aslında bilgisayardan ve .NET dünyasından askerlikte de pek kopmadım. Görev yaptığım Askeri Mahkeme'ye boş zamanlarımda oldukça önemli bir uygulama geliştirme şansını buldum. .NET Framework 2.0 üzerinde çalışan &lt;span style="font-weight: bold;"&gt;Esas Defteri&lt;/span&gt; adındaki masaüstü bir uygulama ile artık Kolordu'daki tüm dava dosyaları bilgisayar ortamında saklanabiliyor. Gelişmiş arama, raporlama arayüzleri ve devir işlemleri arayüzleri ile hazırladığım bu uygulama uzun yıllar mahkememize hizmet edecektir diye düşünüyorum. Kullandığım Pentium-2 işlemcili makina beni biraz kısıtlasa da, birkaç makale ve birkaç blog postu askerlik günlerimde bilgi paylaşımı adına klavyemden çıkarabildiklerim oldu.&lt;br /&gt;&lt;br /&gt;İyisi ile kötüsü ile bitti gitti askerliğim. Beş ay kadar önce yazdığım veda yazısında da dediğim gibi &lt;span style="font-weight: bold; font-style: italic;"&gt;"kaldığımız yerden devam ediyoruz..."&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-7354317434034855959?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/7354317434034855959/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=7354317434034855959' title='2 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/7354317434034855959'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/7354317434034855959'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/05/askerlik-grevim-sona-erdi.html' title='Askerlik Görevim Sona Erdi'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-2021579087484018528</id><published>2008-05-11T16:42:00.001+03:00</published><updated>2008-05-11T17:34:40.936+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='asp.net'/><title type='text'>RenderControl Metodu ile Kontrolün HTML Çıktısını Üretmek</title><content type='html'>&lt;p&gt;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 &amp;lt;span&amp;gt; elementine dönüştürülürken, GridView gibi karmaşık bir kontrol ise tablo (&amp;lt;table&amp;gt; elementi) ve tablo içerisindeki elementlere dönüştürülür. Web uygulamalarında kullandığımız tüm sunucu kontrolleri &lt;strong&gt;WebControl&lt;/strong&gt; sınıfından, WebControl ise &lt;strong&gt;Control&lt;/strong&gt; sınıftan türetilmektedir. Control sınıfında yer alan &lt;strong&gt;RenderControl&lt;/strong&gt; metodu &lt;em&gt;(virtual metot olduğu için türetilen sınıflarda override edilir)&lt;/em&gt; 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.&lt;/p&gt;&lt;p&gt;"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:&lt;br /&gt;&lt;br /&gt; - 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,&lt;br /&gt; - 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,&lt;br /&gt; - 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,&lt;br /&gt; - 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...&lt;/p&gt;&lt;p&gt;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.&lt;/p&gt;&lt;p&gt;&lt;span class="csharpcode"&gt;&lt;br /&gt;...&lt;br /&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System.Collections.Generic; &lt;br /&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System.IO; &lt;br /&gt;&lt;br /&gt;&lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;partial&lt;/span&gt; &lt;span class="kwrd"&gt;class&lt;/span&gt; RenderControlKullan : System.Web.UI.Page &lt;br /&gt;{ &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class="kwrd"&gt;protected&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; Page_Load(&lt;span class="kwrd"&gt;object&lt;/span&gt; sender, EventArgs e) &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;{ &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Dictionary&amp;lt;&lt;span class="kwrd"&gt;string&lt;/span&gt;, &lt;span class="kwrd"&gt;string&lt;/span&gt;&amp;gt; liste = &lt;span class="kwrd"&gt;new&lt;/span&gt; Dictionary&amp;lt;&lt;span class="kwrd"&gt;string&lt;/span&gt;, &lt;span class="kwrd"&gt;string&lt;/span&gt;&amp;gt;(); &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;liste.Add(&lt;span class="str"&gt;"Uğur Umutluoğlu"&lt;/span&gt;, &lt;span class="str"&gt;"http://umutluoglu.blogspot.com"&lt;/span&gt;); &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;liste.Add(&lt;span class="str"&gt;"Burak Batur"&lt;/span&gt;, &lt;span class="str"&gt;"www.burakbatur.com"&lt;/span&gt;); &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;liste.Add(&lt;span class="str"&gt;"Burak Selim Şenyurt"&lt;/span&gt;, &lt;span class="str"&gt;"www.bsenyurt.com"&lt;/span&gt;); &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;liste.Add(&lt;span class="str"&gt;"nedirTV?com"&lt;/span&gt;, &lt;span class="str"&gt;"www.nedirtv.com"&lt;/span&gt;); &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;liste.Add(&lt;span class="str"&gt;"Türk Aspx"&lt;/span&gt;, &lt;span class="str"&gt;"www.turkaspx.net"&lt;/span&gt;); &lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;GridView gvSiteler = &lt;span class="kwrd"&gt;new&lt;/span&gt; GridView(); &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;gvSiteler.DataSource = liste; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;gvSiteler.DataBind(); &lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;StringWriter sw = &lt;span class="kwrd"&gt;new&lt;/span&gt; StringWriter(); &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;HtmlTextWriter htw = &lt;span class="kwrd"&gt;new&lt;/span&gt; HtmlTextWriter(sw); &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;gvSiteler.RenderControl(htw); &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;lblGrid.Text = sw.ToString(); &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;} &lt;br /&gt;}&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Sayfa çalıştırıldığında &lt;b&gt;lblGrid.Text = sw.ToString();&lt;/b&gt; satırına bir break-point atalım ve sw'nin içerisinde neler varmış bir bakalım.&lt;br /&gt;&lt;br /&gt;&lt;img style="border:none;" src="http://4.bp.blogspot.com/_657dzC0AiLc/SCcC0ZddAzI/AAAAAAAAAHs/vo_budbjM7M/s320/rendercontrol_stringwriter.gif" border="0" alt=""id="BLOGGER_PHOTO_ID_5199127394033402674" /&gt;&lt;/p&gt;&lt;p&gt;GridView nesnesi üretildikten sonra RenderControl metodu ile işlem gerçekleşiyor. RenderControl geriye herhangi bir değer dönen bir metot değildir (void); parametre olarak aldığı &lt;strong&gt;HtmlTextWriter&lt;/strong&gt; tipinden nesneye kontrolün çıktısını aktarır. HtmlTextWriter'da InnerWriter özelliğindeki HTML elementlerini &lt;strong&gt;TextWriter ve türevi nesneler&lt;/strong&gt;den birine aktarır. Burada &lt;strong&gt;StringWriter&lt;/strong&gt; en uygun tip. Performans açısından StringWriter'ı da bir StringBuilder'a aktarmak iyi bir yol olabilir ama işi uzatmadan kısaca sonuca gidelim. sw adındaki StringWriter nesnesinin çıktısını stringe dönüştürerek lblGrid adındaki kontrole değeri yazdırıyoruz. Aşağıdaki sayfamızın çıktısı görülmektedir.&lt;br /&gt;&lt;br /&gt;&lt;img style="border:none;" src="http://2.bp.blogspot.com/_657dzC0AiLc/SCcCa5ddAyI/AAAAAAAAAHk/YIC93HYL3vk/s320/rendercontrol_sayfa_gorunum.gif" border="0" alt=""id="BLOGGER_PHOTO_ID_5199126955946738466" /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-2021579087484018528?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/2021579087484018528/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=2021579087484018528' title='1 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/2021579087484018528'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/2021579087484018528'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/05/rendercontrol-metodu-ile-kontroln-html.html' title='RenderControl Metodu ile Kontrolün HTML Çıktısını Üretmek'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_657dzC0AiLc/SCcC0ZddAzI/AAAAAAAAAHs/vo_budbjM7M/s72-c/rendercontrol_stringwriter.gif' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-7445579968249833293</id><published>2008-04-13T19:33:00.002+03:00</published><updated>2008-04-13T19:57:59.703+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQL'/><title type='text'>SQL Sorgusuna Tablo Adını Parametre Olarak Aktarmak</title><content type='html'>&lt;p&gt;Web uygulamalarında en çok saldırı alabileceğimiz yerler veritabanı üzerinde çalıştırdığımız SQL sorgularımızdır. &lt;b&gt;SQL Injection&lt;/b&gt; 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 &lt;b&gt;&lt;i&gt;"DROP DATABASE ..."&lt;/i&gt;&lt;/b&gt; 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 &lt;b&gt;parametre (parameter)&lt;/b&gt; kullanarak bu tip tehditlerden veritabanımızı koruyabilmekteyiz. Parametreler SQL cümlelerinde sadece sütunlarda aranacak değerleri taşıyabilmekte, &lt;u&gt;tablo veya sütun isimlerini ise taşıyamamaktadır&lt;/u&gt;. &lt;b&gt;&lt;i&gt;"Select * From Haberler Where HaberID=@id"&lt;/i&gt;&lt;/b&gt; 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 &lt;b&gt;&lt;i&gt;"Select * From @TabloIsim"&lt;/i&gt;&lt;/b&gt; 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...&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;Tablo adını parametre olarak aktarma şansımız sadece stored procedure kullanma durumunda bulunmaktadır. Tabi ki sp içerisinde standart bir cümle yazmak yerine ufak bir hile ile bu işlemi gerçekleştirebileceğiz. Eğer sp içinde SQL cümlemizi bir değişkende saklayıp, alınan parametre değerini cümlemize eklersek tablo adını cümlemiz içerisine aktarabiliriz.  Tabi ki cümle bir değişkende saklandığı için sp içerisinde bu cümleyi çalıştırmak ta gerekecektir. Aşağıda tablo adını parametre olarak alan basit bir stored procedure görülmektedir.&lt;br /&gt;&lt;/p&gt;&lt;span class="csharpcode"&gt;&lt;span class="kwrd"&gt;CREATE&lt;/span&gt; &lt;span class="kwrd"&gt;PROC&lt;/span&gt; TabloKayitlar&lt;br /&gt;@tablo_isim nvarchar(30)&lt;br /&gt;&lt;span class="kwrd"&gt;AS&lt;/span&gt;&lt;br /&gt;&lt;span class="kwrd"&gt;BEGIN&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class="kwrd"&gt;DECLARE&lt;/span&gt; @sql_str nvarchar(50)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class="kwrd"&gt;SET&lt;/span&gt; @sql_str = &lt;span class="str"&gt;'Select * From '&lt;/span&gt; + @tablo_isim&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class="kwrd"&gt;EXEC&lt;/span&gt;(@sql_str)&lt;br /&gt;&lt;span class="kwrd"&gt;END&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-7445579968249833293?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/7445579968249833293/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=7445579968249833293' title='3 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/7445579968249833293'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/7445579968249833293'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/04/sql-sorgusuna-tablo-adn-parametre.html' title='SQL Sorgusuna Tablo Adını Parametre Olarak Aktarmak'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-250602556324726595</id><published>2008-04-08T19:11:00.002+03:00</published><updated>2008-11-21T01:00:22.578+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='asp.net ajax'/><title type='text'>Accordion Kontrolünde Veritabanı ile Çalışmak</title><content type='html'>Bir önceki yazımda &lt;span style="font-weight: bold;"&gt;Accordion &lt;/span&gt;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.&lt;br /&gt;&lt;br /&gt;Accordion kontrolünde dinamik veri ile çalışmak Repeater ve DataList gibi kontrolleriyle benzerlik göstermektedir. Eğer &lt;span style="font-weight: bold;"&gt;SqlDataSource&lt;/span&gt;, &lt;span style="font-weight: bold;"&gt;XmlDataSource &lt;/span&gt;gibi veri kaynakları ile çalışırsak sayfada bağlanacak veri kaynağını belirtmek yeterli olmayacak, HTML kısmından &lt;strong&gt;Eval&lt;/strong&gt; veya &lt;strong&gt;Bind&lt;/strong&gt; 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 &lt;strong&gt;DataTable&lt;/strong&gt;, &lt;strong&gt;DataSet&lt;/strong&gt; veya &lt;strong&gt; koleksiyon nesneleri&lt;/strong&gt; ile Accordion kontrolünün çalışmasını sağlayabiliriz. Dilerseniz iki ayrı örnekte bu iki farklı yolu nasıl uygulayabileceğimizi görelim.&lt;br /&gt;&lt;br /&gt;  &lt;strong&gt;DataSource Kontrolleri ile Çalışmak&lt;/strong&gt;&lt;br /&gt;  Veriyi en kolay şekilde bağlayacağımız bu yolda sayfamızdaki DataSource nesnesini Accordion kontrolünün &lt;strong&gt;DataSourceID&lt;/strong&gt; özelliğinde belirlememiz gerekecektir. Accordion kontrolünün ise &lt;strong&gt;HeaderTemplate&lt;/strong&gt; ve &lt;strong&gt;ContentTemplate&lt;/strong&gt; kısımlarında yüklenecek verilerin başlık ve içerik bilgilerini &lt;strong&gt;Eval&lt;/strong&gt; metodu ile bağlıyor olacağız. Access'te oluşturulmuş bir veritabanında saklanan haberlerin listeleneceği sayfada Accordion kontrolü ile çalışmak aşağıdaki kodlardan da görüleceği gibi oldukça kolay!&lt;br /&gt;&lt;br /&gt;  &lt;strong&gt;&amp;lt;ajaxToolkit:Accordion&lt;/strong&gt; ID="accHaberler" runat="server" HeaderCssClass="baslik" HeaderSelectedCssClass="secilenBaslik" ContentCssClass="icerik" &lt;strong&gt;DataSourceID="dsHaberler"&lt;/strong&gt; Width="460"&amp;gt;&lt;br /&gt;     &lt;strong&gt;&amp;lt;HeaderTemplate&amp;gt;&lt;/strong&gt;&lt;br /&gt;        &lt;strong&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;&amp;lt;%#Eval("Baslik") %&amp;gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;    &amp;lt;/HeaderTemplate&amp;gt;&lt;br /&gt;    &lt;strong&gt;&amp;lt;ContentTemplate&amp;gt;&lt;/strong&gt;&lt;br /&gt;       &lt;strong&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;&amp;lt;%#Eval("Icerik") %&amp;gt;&lt;/span&gt;&lt;/strong&gt;&amp;lt;br /&amp;gt;&lt;br /&gt;       Eklendiği tarih: &lt;strong&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;&amp;lt;%#Eval("Tarih") %&amp;gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;    &amp;lt;/ContentTemplate&amp;gt;&lt;br /&gt;  &amp;lt;/ajaxToolkit:Accordion&amp;gt;&lt;br /&gt;  &lt;strong&gt;&amp;lt;asp:AccessDataSource &lt;/strong&gt;ID="dsHaberler" runat="server" DataFile="~/App_Data/Site.mdb" SelectCommand="SELECT [Baslik], [Icerik], [Tarih] FROM [Haberler] ORDER BY [Tarih] DESC"&amp;gt; &amp;lt;/asp:AccessDataSource&amp;gt;&lt;br /&gt;&lt;br /&gt;  Template alanları içerisine açılmış ASP etiketleri ile veri yükleme işlemini gerçekleştiriyoruz. HTML kodlarını istediğimiz şekilde değiştirebilme kolaylığı belki de bu yolun en önemli avantajı.&lt;br /&gt;&lt;br /&gt;  &lt;strong&gt;DataTable vb. Nesneler ile Çalışmak&lt;/strong&gt;&lt;br /&gt;  Bazı durumlarda ise Accordion kontrolüne DataTable gibi veri nesneleri ile veri yüklemek isteyebiliriz. Programatik yollarla yapacağımız bu işlemlerde HTML tarafında müdahale şansımız daha zor olsa da programın ve verilerin akışını istediğimiz gibi değiştirebilme şansına sahip olabiliyoruz. Bu yöntemde bir döngü içerisinde &lt;strong&gt;AccordionPane&lt;/strong&gt; nesneleri oluşturarak AccordionPane'in &lt;strong&gt;HeaderContainer&lt;/strong&gt; ve &lt;strong&gt;ContentContainer&lt;/strong&gt;'larındaki &lt;strong&gt;Controls&lt;/strong&gt; koleksiyonuna kontroller ekleyebiliriz. Sunucu tarafında performans açısından Label gibi bir kontrol yerine LiteralControl kullanmak iyi bir pratik olacaktır. Aşağıda böyle bir işlemi nasıl yapabileceğimiz görülmektedir. Sayfamızın HTML kısmına eklenmiş &lt;strong&gt;accHaberler&lt;/strong&gt; adında bir Accordion kontrolünü daha önceden eklediğimizi hatırlatayım.&lt;br /&gt;&lt;br /&gt;  ...&lt;br /&gt;  using System.Data.OleDb; &lt;em&gt;// Access veritabanına bağlanmak için&lt;/em&gt;&lt;br /&gt;  using AjaxControlToolkit; &lt;em&gt;// AccordionPane kontrolüne erişmek için&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;  public partial class Haberler : System.Web.UI.Page&lt;br /&gt;  {&lt;br /&gt;    protected void Page_Load(object sender, EventArgs e)&lt;br /&gt;    {&lt;br /&gt;        string yol = Server.MapPath("App_Data/Site.mdb");&lt;br /&gt;&lt;br /&gt;        OleDbConnection con = new OleDbConnection("Provider=Microsoft.Jet.OleDB.4.0; Data Source=" + yol);&lt;br /&gt;        OleDbDataAdapter daHaberler = new OleDbDataAdapter("Select Baslik, Icerik, Tarih From Haberler Order By Tarih Desc", con);&lt;br /&gt;        DataTable dtHaberler = new DataTable();&lt;br /&gt;        daHaberler.Fill(dtHaberler);&lt;br /&gt;        foreach (&lt;strong&gt;DataRow dr in dtHaberler.Rows&lt;/strong&gt;)&lt;br /&gt;        {&lt;br /&gt;           &lt;strong&gt;AccordionPane paneHaber = new AccordionPane();&lt;br /&gt;           paneHaber.HeaderContainer.Controls.Add(&lt;/strong&gt;new LiteralControl(dr["Baslik"].ToString())&lt;strong&gt;);&lt;br /&gt;           paneHaber.ContentContainer.Controls.Add(&lt;/strong&gt;new LiteralControl(dr["Icerik"].ToString())&lt;strong&gt;);&lt;br /&gt;           paneHaber.ContentContainer.Controls.Add(&lt;/strong&gt;new LiteralControl("&amp;lt;br&amp;gt;")&lt;strong&gt;);&lt;br /&gt;           paneHaber.ContentContainer.Controls.Add(&lt;/strong&gt;new LiteralControl("Ekleme tarihi: " + dr["Tarih"].ToString())&lt;strong&gt;);&lt;br /&gt;           accHaberler.Panes.Add(paneHaber); &lt;/strong&gt; &lt;em&gt;// Oluşan AccordionPane'i Accordion kontrolüne ekliyoruz.&lt;/em&gt;&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt;  Görüldüğü gibi bir foreach döngüsü içinde DataTable'ın her satırı bir AccordionPane kontrolünün içeriğini oluşturmakta ve AccordionPane kontrolü de Accordion'un &lt;strong&gt;Panes&lt;/strong&gt; koleksiyonuna eklenmektedir. Sayfayı çalıştırdığımızda her iki örnektede veritabanından getirilen verilerin Accordion kontrolüne yüklendiğini görebiliriz. Kontrolümüzü hazırladığımız imajlar ve CSS ile kullandığımızda göze hoş gelen bir tasarım elde edebiliriz. Aşağıda Accordion kontrolünün son hali görülmektedir.&lt;br /&gt;&lt;br /&gt;&lt;img style="border: medium none ;" src="http://1.bp.blogspot.com/_657dzC0AiLc/R_uZBnDds8I/AAAAAAAAAHE/ltygEKklzFE/s320/accordion_database_kullanimi.gif" alt="AJAX Control Toolkit - Accordion Kontrolünde Veritabanı ile Çalışmak" id="BLOGGER_PHOTO_ID_5186907648789689282" border="0" /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-250602556324726595?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/250602556324726595/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=250602556324726595' title='1 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/250602556324726595'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/250602556324726595'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/04/accordion-kontrolnde-veritaban-ile.html' title='Accordion Kontrolünde Veritabanı ile Çalışmak'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_657dzC0AiLc/R_uZBnDds8I/AAAAAAAAAHE/ltygEKklzFE/s72-c/accordion_database_kullanimi.gif' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-6056147504961736538</id><published>2008-04-05T11:12:00.012+03:00</published><updated>2008-04-05T12:54:27.225+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='asp.net ajax'/><title type='text'>Accordion'un CSS ile Etkin Kullanımı</title><content type='html'>&lt;strong&gt;AJAX Control Toolkit&lt;/strong&gt; ile gelen en kullanışlı kontrollerden birisi &lt;strong&gt;Accordion&lt;/strong&gt; kontrolüdür. Web sayfalarının genellikle &lt;em&gt;Sık Sorulan Sorular &lt;/em&gt;veya &lt;em&gt;Yardım&lt;/em&gt; 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 &lt;span style="FONT-WEIGHT: bold"&gt;AccordionPane&lt;/span&gt;'leri taşıyan Accordion kontrolünü CSS kullanarak zengin ve göze hoş gelen tasarımlar ortaya çıkarabiliriz. Accordion'un &lt;span style="FONT-WEIGHT: bold"&gt;HeaderCssClass&lt;/span&gt;, &lt;span style="FONT-WEIGHT: bold"&gt;HeaderSelectedCssClass &lt;/span&gt;ve &lt;span style="FONT-WEIGHT: bold"&gt;ContentCssClass&lt;/span&gt; ö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.&lt;br /&gt;&lt;br /&gt;Projemize ekleyeceğimiz &lt;strong&gt;style.css&lt;/strong&gt; dosyasında başlık, seçilen maddenin başlığı ve içerik kısımlarının nasıl görüntüleneceğini belirliyorum. Göze hoş gelmesi için bir grafik programında hazırladığım gradient geçişleri olan 3 tane gif dosyasını bu alanların zeminlerinde kullanıyorum.&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#cc0000;"&gt;&lt;strong&gt;&lt;span style="COLOR: rgb(204,0,102)"&gt;style.css&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;/span&gt;&lt;strong&gt;.baslik&lt;/strong&gt; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;font-size: 13px; font-family: Verdana; font-weight: bold; height:18px;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;text-indent: 5px; padding: 1px; margin-top: 1px; cursor: pointer;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;border-right: #ffcd70 1px solid; border-top: #ffcd70 1px solid;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;border-left: #ffcd70 1px solid; border-bottom: #ffcd70 1px solid;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;background-image: url(images/baslik_zemin.gif);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;background-position: top; background-repeat: repeat-x;&lt;br /&gt;} &lt;strong&gt;&lt;br /&gt;&lt;br /&gt;.secilenBaslik&lt;/strong&gt; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;font-size: 13px; font-family: Verdana; font-weight: bold; height:18px;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;text-indent: 5px; padding: 1px; margin-top: 1px;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;border-right: #ffcd70 1px solid; border-top: #ffcd70 1px solid;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;border-left: #ffcd70 1px solid; border-bottom: #ffcd70 1px solid;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;background-image: url(images/secilen_baslik_zemin.gif);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;background-position: top; background-repeat: repeat-x;&lt;br /&gt;} &lt;br /&gt;&lt;br /&gt;&lt;strong&gt;.icerik&lt;/strong&gt; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;font-size: 11px; font-family: Verdana; padding: 5px;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;border-right: #ffcd70 1px solid; border-top: none;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;border-left: #ffcd70 1px solid; border-bottom: #ffcd70 1px solid;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;background-image: url(images/icerik_zemin.gif);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;background-position: left; background-repeat: repeat-y;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;Açık olmayan başlıkların üzerine gelindiğinde farenin simgesini değiştirmek için başlık sınıfında &lt;strong&gt;cursor: pointer&lt;/strong&gt; tanımlamasını yapmak daha güzel olacaktır. Gelelim sayfamızın tasarımına. CSS dosyamıza link vereceğimiz bir aspx dosyasında Accordion'un yukarıda belirttiğimiz özelliklerini CSS dosyasında tanımladığımız sınıflarla dolduruyoruz. Geriye kalan tek şey ise AccordionPane'lerin başlık ve içeriklerin doldurmak olacaktır.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="COLOR: rgb(204,0,102)"&gt;Default.aspx&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&amp;lt;head runat="server"&amp;gt;&lt;br /&gt;&amp;lt;title&amp;gt;Accordion'un CSS ile Etkin Kullanımı&amp;lt;/title&amp;gt;&lt;br /&gt;&lt;strong&gt;&amp;lt;link href="style.css" rel="stylesheet" type="text/css" /&amp;gt;&lt;/strong&gt;&lt;br /&gt;&amp;lt;/head&amp;gt;&lt;br /&gt;&amp;lt;body&amp;gt;&lt;br /&gt;&amp;lt;form id="form1" runat="server"&amp;gt;&lt;br /&gt;&amp;lt;ajaxToolkit:ToolkitScriptManager ID="ScriptManager1" runat="server" /&amp;gt;&lt;br /&gt;&amp;lt;ajaxToolkit:Accordion ID="Accordion1" runat="server" &lt;strong&gt;HeaderCssClass="baslik"&lt;br /&gt;HeaderSelectedCssClass="secilenBaslik" ContentCssClass="icerik"&lt;/strong&gt; Width="185"&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;Panes&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;ajaxToolkit:AccordionPane ID="pane1" runat="server"&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;Header&amp;gt;Başlık-1&amp;lt;/Header&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;Content&amp;gt;İçerik-1&amp;lt;/Content&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/ajaxToolkit:AccordionPane&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;ajaxToolkit:AccordionPane ID="pane2" runat="server"&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;Header&amp;gt;Başlık-2&amp;lt;/Header&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;Content&amp;gt;İçerik-2&amp;lt;/Content&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/ajaxToolkit:AccordionPane&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;ajaxToolkit:AccordionPane ID="pane3" runat="server"&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;Header&amp;gt;Başlık-3&amp;lt;/Header&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;Content&amp;gt;İçerik-3&amp;lt;/Content&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/ajaxToolkit:AccordionPane&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/Panes&amp;gt;&lt;br /&gt;&amp;lt;/ajaxToolkit:Accordion&amp;gt;&lt;br /&gt;&amp;lt;/form&amp;gt;&lt;br /&gt;&amp;lt;/body&amp;gt;&lt;br /&gt;&lt;span&gt;&lt;br /&gt;&lt;img id="BLOGGER_PHOTO_ID_5185672948771304322" style="border:none; float:left" alt="" src="http://1.bp.blogspot.com/_657dzC0AiLc/R_c2EnDds4I/AAAAAAAAAGk/-wWKPK54JqA/s320/accordion_css_kullanimi.gif" border="0" /&gt;&lt;br /&gt;Sayfayı çalıştırdığımızda Accordion kontrolünün görünümü yandaki gibi olacaktır. Burada Accordion panelerinin genişlik ve yüksekliklerine göre zemin resimlerini hazırlamamız görünümün düzgün olmasındaki en önemli etkenlerden biri olacaktır.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-6056147504961736538?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/6056147504961736538/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=6056147504961736538' title='1 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/6056147504961736538'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/6056147504961736538'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/04/accordionun-css-ile-etkin-kullanm.html' title='Accordion&apos;un CSS ile Etkin Kullanımı'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_657dzC0AiLc/R_c2EnDds4I/AAAAAAAAAGk/-wWKPK54JqA/s72-c/accordion_css_kullanimi.gif' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-3267480429995013411</id><published>2008-03-23T20:12:00.001+02:00</published><updated>2008-03-23T20:25:30.171+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='asp.net'/><title type='text'>Session ve Cache Nesneleri Üzerine</title><content type='html'>&lt;img style="border: medium none ; float: left;" src="http://1.bp.blogspot.com/_657dzC0AiLc/R-afm3Dds3I/AAAAAAAAAGc/PtuKCBFvLL0/s320/session_cache_karsilastir.gif" alt="" id="BLOGGER_PHOTO_ID_5181003911298659186" border="0" /&gt;Bir web uygulamasında &lt;strong&gt;Session&lt;/strong&gt; ve &lt;strong&gt;Cache&lt;/strong&gt; 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.&lt;br /&gt;&lt;br /&gt;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:&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Session&lt;/strong&gt;&lt;br /&gt;- Kullanıcı ile ilişkili verileri saklar. Her kullanıcının bilgisi bellekte farklı bir alanda saklanır. O an sitede 20 kullanıcı var ise 20 tane farklı Session nesnesi bellekte saklanır. Bir kullanıcı sitedeki diğer kullanıcının Session bilgisine ulaşamaz.&lt;br /&gt;- Genellikle kullanıcı adı veya açılan oturum ile ilgili bilgiler saklanır. Bu bilgiler her kullanıcı için saklanacağı için büyük boyutta olmaması gerekir.&lt;br /&gt;- Bilgiler varsayılan olarak &lt;span style="text-decoration: underline;"&gt;sunucunun belleğinde&lt;/span&gt; (InProc modu) saklanır. Eğer istenilirse &lt;span style="text-decoration: underline;"&gt;SQL Server veritabanında&lt;/span&gt; (SQLServer modu) veya &lt;span style="text-decoration: underline;"&gt;başka bir sunucunun belleğinde&lt;/span&gt; (StateServer modu) saklanabilir.&lt;br /&gt;- Varsayılan olarak Session nesnelerinin yaşam süreleri 20 dakikadır. Kullanıcı sistemden çıkış yapar ise veya 20 dakika boyunca aktif olmazsa Session nesneleri bellekten kaldırılır. Eğer istenilirse bu süre değiştirilebilir. (web.config dosyasında sessionState düğümünden)&lt;br /&gt;- Performans açısından herhangi bir kazanç &lt;span style="text-decoration: underline;"&gt;sağlamaz&lt;/span&gt;. Fakat durum yönetimi adına kullanıcıyı tanımamız ve buna göre işlemler yapmamız adına kolaylıklar sağlar.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Cache&lt;/strong&gt;&lt;br /&gt;- Kullanıcıya özel bilgi saklamaz. Saklanan veriye aynı anda tüm kullanıcılar erişebilir. Sitede 20 kullanıcı var ise &lt;span style="text-decoration: underline;"&gt;20 tane Cache nesnesi değil 1 tane Cache nesnesi&lt;/span&gt; saklanır. (En sık karıştırılan noktalardan biri burası)&lt;br /&gt;- Genellikle bir sayfanın tamamının HTML kodları (output caching), bir sayfanın belirli bir kısmının HTML kodları (fragment caching) veya DataTable gibi bir nesne (data caching) Cache nesnesinde saklanır.&lt;br /&gt;- Bilgiler &lt;span style="text-decoration: underline;"&gt;sunucunun belleğinde&lt;/span&gt; saklanır. Bu veriler ASP.NET tarafından yönetilir. Hatta Cache'e eklenecek nesnelere öncelik ataması yapılarak gerektiğinde ASP.NET'in hangi Cache nesnelerini öncelikli olarak bellekten kaldıracağı belirlenebilir.&lt;br /&gt;- Zamana bağımlı olarak veriler Cache'de saklanabileceği gibi nesnenin değişim durumunda göre veya dosya-klasör içeriğinin değişimine bağımlı olarakta değerler saklanabilir.&lt;br /&gt;- Performans kazancı sağlamak amacıyla kullanılır. Bir nesneyi veya bir sayfayı tekrar tekrar üretmek sunucuya belirli bir yük getiriyorsa nesne veya sayfa bellekte saklanarak sayfaların daha hızlı çalıştırılması sağlanır.&lt;br /&gt;&lt;br /&gt;Görüldüğü gibi Session ve Cache farklı amaçlar için kullanabileceğimiz nesnelerdir. Session yerine Cache, Cache yerine Session kullanmak teoride olabilse de pratikte kullanılmaz, en azından benim aklıma kullanılabileceği bir yer gelmiyor.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-3267480429995013411?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/3267480429995013411/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=3267480429995013411' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/3267480429995013411'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/3267480429995013411'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/03/session-ve-cache-nesneleri-zerine.html' title='Session ve Cache Nesneleri Üzerine'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_657dzC0AiLc/R-afm3Dds3I/AAAAAAAAAGc/PtuKCBFvLL0/s72-c/session_cache_karsilastir.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-1588213614115452565</id><published>2008-03-07T21:39:00.001+02:00</published><updated>2008-03-07T21:49:01.508+02:00</updated><title type='text'>Visual Studio 2008 - Ürün Karşılaştırması</title><content type='html'>&lt;strong&gt;Visual Studio 2008&lt;/strong&gt;'in piyasaya sürülen &lt;u&gt;bütün&lt;/u&gt; ücretli ve ücretsiz sürümlerinin karşılaştırmasını bulabileceğiniz faydalı bir link. Öğrencilerim genelde &lt;em&gt;"Hocam Express Edition'lar ile tam sürümler arasında ne gibi farklılıklar var"&lt;/em&gt; diye sorardı. Artık cevabı için bu linki kullanabilirim!&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;"Visual Studio 2008 Product Comparison"&lt;/strong&gt; başlıklı incelemeye &lt;a href="http://msdn2.microsoft.com/en-us/vstudio/products/cc149003.aspx" target="_blank"&gt;&lt;strong&gt;bu linkten&lt;/strong&gt;&lt;/a&gt; ulaşabilirsiniz.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-1588213614115452565?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/1588213614115452565/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=1588213614115452565' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/1588213614115452565'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/1588213614115452565'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/03/visual-studio-2008-rn-karlatrmas.html' title='Visual Studio 2008 - Ürün Karşılaştırması'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-8522695788667204130</id><published>2008-02-25T19:06:00.002+02:00</published><updated>2008-11-21T01:01:33.818+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sitemap'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net 2.0'/><title type='text'>ASP.NET Uygulamalarında Birden Fazla Sitemap Dosyası Kullanma</title><content type='html'>&lt;p&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://1.bp.blogspot.com/_657dzC0AiLc/R8L2zxgFvMI/AAAAAAAAAGU/gjCvZNHuq4E/s320/birden_fazla_sitemap.gif" alt="ASP.NET Uygulamalarında Birden Fazla Sitemap Dosyası Kullanma" id="BLOGGER_PHOTO_ID_5170966691496443074" border="0" /&gt;ASP.NET uygulamalarında navigasyon kontrollerini &lt;b&gt;SiteMapDataSource&lt;/b&gt; ile birlikte kullandığımızda sadece &lt;u&gt;bir tane&lt;/u&gt; 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 &lt;b&gt;C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\CONFIG&lt;/b&gt; dizininde bulunan web.config dosyasındaki &lt;b&gt;&amp;lt;siteMap&amp;gt;&lt;/b&gt; düğümüne bakacak olursanız tanımlanan tek bir provider'ın olduğunu ve bununda siteMapFile niteliğinde &lt;b&gt;web.sitemap&lt;/b&gt; 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 &lt;b&gt;&amp;lt;system.web&amp;gt;&lt;/b&gt; kısmına ekleyeceğimiz kodlar bulunmaktadır.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;b&gt;web.config&lt;/b&gt;&lt;br /&gt;&amp;lt;system.web&amp;gt;&lt;br /&gt;...&lt;br /&gt;&amp;lt;siteMap&amp;gt;&lt;br /&gt; &amp;lt;providers&amp;gt;&lt;br /&gt;    &amp;lt;add &lt;b&gt;name="SiteMapProvider2" siteMapFile="web2.sitemap"&lt;/b&gt; type="System.Web.XmlSiteMapProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/&amp;gt;&lt;br /&gt; &amp;lt;/providers&amp;gt;&lt;br /&gt;&amp;lt;/siteMap&amp;gt;&lt;br /&gt;&amp;lt;/system.web&amp;gt;&lt;br /&gt;&lt;p&gt;&lt;b&gt;SiteMapProvider2&lt;/b&gt; adında &lt;b&gt;web2.sitemap&lt;/b&gt; isimli dosya ile çalışacak yeni bir siteMap sağlayıcısı tanımladık. Bu uygulama içerisinde artık web.sitemap dışında web2.sitemap isimli bir site haritası dosyası da kullanabiliriz. Bir ASP.NET sayfasına iki tane Menu kontrolü ve iki tane SiteMapDataSource kontrolü ekleyerek birden fazla sitemap dosyası kullanımını test ediyoruz. Burada dikkat edeceğimiz nokta web2.sitemap isimli dosyamıza bağlanacak olan SiteMapDataSource kontrolünde SiteMapProvider özelliğini web.config'de tanımladığımız SiteMapProvider2 isimli sağlayıcıya eşitlemek olacaktır.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;b&gt;Default.aspx&lt;/b&gt;&lt;br /&gt;&amp;lt;asp:Menu ID="Menu1" runat="server" BackColor="#B5C7DE" DataSourceID="SiteMapDataSource1" Font-Names="Verdana" Font-Size="12px"&amp;gt;&lt;br /&gt;&amp;lt;/asp:Menu&amp;gt;&lt;br /&gt;&amp;lt;br /&amp;gt;&lt;br /&gt;&amp;lt;asp:Menu ID="Menu2" runat="server" BackColor="#E3EAEB" DataSourceID="SiteMapDataSource2" Font-Names="Verdana" Font-Size="12px"&amp;gt;&lt;br /&gt;&amp;lt;/asp:Menu&amp;gt;&lt;br /&gt;&amp;lt;asp:SiteMapDataSource ID="SiteMapDataSource1" runat="server" ShowStartingNode="False" /&amp;gt;&lt;br /&gt;&amp;lt;asp:SiteMapDataSource ID="SiteMapDataSource2" runat="server" ShowStartingNode="False" &lt;b&gt;SiteMapProvider="SiteMapProvider2"&lt;/b&gt; /&amp;gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-8522695788667204130?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/8522695788667204130/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=8522695788667204130' title='1 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/8522695788667204130'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/8522695788667204130'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/02/aspnet-uygulamalarnda-birden-fazla.html' title='ASP.NET Uygulamalarında Birden Fazla Sitemap Dosyası Kullanma'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_657dzC0AiLc/R8L2zxgFvMI/AAAAAAAAAGU/gjCvZNHuq4E/s72-c/birden_fazla_sitemap.gif' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-1975991447824679031</id><published>2008-02-17T18:52:00.004+02:00</published><updated>2008-02-17T20:57:51.530+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sitemap'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net 2.0'/><title type='text'>SiteMap Dosyasında Kendi Bilgilerimizi Saklamak</title><content type='html'>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ı?&lt;br /&gt;&lt;br&gt;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.&lt;br /&gt;&lt;br&gt;&lt;b&gt;Web.sitemap&lt;/b&gt;&lt;br /&gt;&amp;lt;?xml version="1.0" encoding="windows-1254" ?&amp;gt; &lt;br /&gt;&amp;lt;siteMap&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;  &amp;lt;siteMapNode url="Default.aspx" title="Anasayfa"&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;      &amp;lt;siteMapNode url="Aspnet.aspx" title="ASP.NET" description="" &lt;b&gt;Editor="Uğur UMUTLUOĞLU"&lt;/b&gt; /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;      &amp;lt;siteMapNode url="Adonet.aspx" title="ADO.NET" description="" &lt;b&gt;Editor="Burak BATUR"&lt;/b&gt; /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;      &amp;lt;siteMapNode url="Cs.aspx" title="C#" description="" &lt;b&gt;Editor="Emrah USLU"&lt;/b&gt; /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;      &amp;lt;siteMapNode url="SqlServer.aspx" title="SQL Server" description="" &lt;b&gt;Editor="Bülent SÖZGE"&lt;/b&gt; /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;  &amp;lt;/siteMapNode&amp;gt;&lt;br /&gt;&amp;lt;/siteMap&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;br&gt;&lt;b&gt;Sablon.master.cs&lt;/b&gt;&lt;br /&gt;Response.Write(&lt;b&gt;SiteMap.CurrentNode["Editor"]&lt;/b&gt;);&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-1975991447824679031?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/1975991447824679031/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=1975991447824679031' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/1975991447824679031'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/1975991447824679031'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/02/sitemap-dosyasnda-kendi-bilgilerimizi.html' title='SiteMap Dosyasında Kendi Bilgilerimizi Saklamak'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-8222421329388108359</id><published>2008-02-12T19:47:00.000+02:00</published><updated>2009-01-10T20:48:32.949+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='asp.net'/><title type='text'>web.config Dosyasından URL ReWriting</title><content type='html'>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 &lt;b&gt;web.config&lt;/b&gt; dosyası ile bu işlemi gerçekleştirmektir. web.config dosyasında &lt;b&gt;&amp;lt;system.web&amp;gt;&lt;/b&gt; düğümü içerisinde açacağımız &lt;b&gt;&amp;lt;urlMappings&amp;gt;&lt;/b&gt; 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. &lt;b&gt;mappedUrl&lt;/b&gt; niteliği sayfanın gerçek URL'ini, &lt;b&gt;url&lt;/b&gt; niteliği ise görüntülenmesi istenilen URL'ini belirler. Yani &lt;b&gt;Ugur.aspx&lt;/b&gt; 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 &lt;b&gt;Default.aspx?isim=ugur&lt;/b&gt; URL'i çalıştırılacaktır.&lt;br /&gt;&lt;p&gt;&lt;br /&gt;&amp;lt;configuration&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;system.web&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;b&gt;&amp;lt;urlMappings enabled="true"&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;add url="~/Ugur.aspx" mappedUrl="Default.aspx?isim=ugur" /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;add url="~/Emrah.aspx" mappedUrl="Default.aspx?isim=emrah" /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;add url="~/Burak.aspx" mappedUrl="Default.aspx?isim=burak" /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/urlMappings&amp;gt;&lt;/b&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;...&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;...&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/system.web&amp;gt;&lt;br /&gt;&amp;lt;/configuration&amp;gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;url niteliğinde relative adres belirlemek zorunludur. Yani çağrılacak URL'in tam yolunu &lt;b&gt;~/&lt;/b&gt; şeklinde belirlemek gerekecektir. Bu işlemin &lt;i&gt;çok az da&lt;/i&gt; olsa performans kaybına sebep olacağını da unutmamak lazım!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-8222421329388108359?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/8222421329388108359/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=8222421329388108359' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/8222421329388108359'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/8222421329388108359'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/02/webconfig-dosyasndan-url-rewriting.html' title='web.config Dosyasından URL ReWriting'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-8280691668701443787</id><published>2008-01-31T19:37:00.000+02:00</published><updated>2008-01-31T19:49:43.903+02:00</updated><title type='text'>Katılamadığım Yazgelistir.com Toplantısı ve Ödülüm</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_657dzC0AiLc/R6IH2mOmIYI/AAAAAAAAAGM/ghwgAqYR9pw/s1600-h/29012008585.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://1.bp.blogspot.com/_657dzC0AiLc/R6IH2mOmIYI/AAAAAAAAAGM/ghwgAqYR9pw/s200/29012008585.jpg" alt="" id="BLOGGER_PHOTO_ID_5161696757476106626" border="0" /&gt;&lt;/a&gt;Geçtiğimiz günlerde İstanbul'da &lt;span style="font-weight: bold;"&gt;yazgelistir.com&lt;/span&gt; editörleri ve yazarlarının katıldığı bir toplantı gerçekleştirildi. Malumunuz askerde olduğum için toplantıya katılamadım ama aldığım güzel bir haber ile de üzüntüm biraz olsun azaldı. Yazgelistir.com tarafından yazdığım makaleler ile site içeriğine 2007 yılında yaptığım katkılarda dolayı yanda gördüğünüz ödülü almışım. Amacımız sahip olduğumuz bilgileri insanlarla paylaşabilmek. Bunun sonucunda insanlardan aldığımız teşekkür mailleri ve bu tip ödüllerde bizleri gerçekten sevindiriyor ve  motivasyonumuzu arttırıyor. Ödülüm şu anda değerli dostum Burak Batur'un evinde, yani emin ellerde!&lt;br /&gt;&lt;br /&gt;Askerde iken ödül almakta başka bir duyguymuş onu da yaşamış olduk.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-8280691668701443787?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/8280691668701443787/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=8280691668701443787' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/8280691668701443787'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/8280691668701443787'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/01/katlamadm-yazgelistircom-toplants-ve.html' title='Katılamadığım Yazgelistir.com Toplantısı ve Ödülüm'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_657dzC0AiLc/R6IH2mOmIYI/AAAAAAAAAGM/ghwgAqYR9pw/s72-c/29012008585.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-1114962259120711166</id><published>2008-01-25T20:24:00.000+02:00</published><updated>2008-01-25T20:28:15.143+02:00</updated><title type='text'>Elazığ'dan Sevgilerle</title><content type='html'>Farklı bir şehire gidiş sebebim genelde seminerler olurdu ve seminerlerin nasıl geçtiği ile ilgili haberlerimi blogumu takip edenlerle paylaşırdım. Ama şimdi askerdeyiz. Eee asker ocağında da .NET semineri verecek halimiz yok değil mi?&lt;br /&gt;&lt;br /&gt;Bugün &lt;b&gt;25 Ocak 2008&lt;/b&gt; ve &lt;b&gt;Şafak 114&lt;/b&gt;. Usta birliğinde Elazığ 8. Kolordu Komutanlığı Askeri Mahkemesi'nde vatani görevime devam ediyorum. Soranlar olursa halim, vaktim, keyfim... yerinde. Burada ara sıra da olsa interneti kullanabilme şansım belki de askerliğimin en keyifli yanı. En azından yazılan bazı makaleleri ve yazılım dünyasındaki yenilikleri takip edebilme, eş-dost ile mesajlaşabilme şansı bulabiliyorum. Benden haberler şimdilik bu kadar. En yakın zamanda teknik içerikli yazılarla, makalelerle ve seminerlerle tekrar görüşmek dileğiyle..&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-1114962259120711166?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/1114962259120711166/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=1114962259120711166' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/1114962259120711166'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/1114962259120711166'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2008/01/elazdan-sevgilerle.html' title='Elazığ&apos;dan Sevgilerle'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-8431510231850371133</id><published>2007-12-10T21:42:00.000+02:00</published><updated>2007-12-10T21:56:33.425+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='kişisel'/><title type='text'>Kısa Bir "Veda"</title><content type='html'>Zor bir veda yazısı ama en güzel tarafı "elveda yazısı" olmaması. Anlaşılacağı üzere askerlik görevim ile ilgili bir veda yazısı okuyorsunuz. &lt;strong&gt;12 Aralık Çarşamba&lt;/strong&gt; günü &lt;strong&gt;Elazığ&lt;/strong&gt;'da birliğime teslim olacağım. &lt;strong&gt;Jandarma-Er&lt;/strong&gt; olarak yapacağım kısa dönem askerlik görevim süresince (5 ay 5 gün boyunca) sizlerle olamayacağım. Allah nasip ederde sağ salim dönersek kaldığımız yerden devam edeceğiz.&lt;br /&gt;&lt;br /&gt;Bu sabah askerliğimin nereye çıktığın heyecanla beklediğim uzun süre içerisinde geçmişte neler yapmışım diye bir bakındım ve ilginç istatistiklerle karşılaştım. Şöyleki bugüne kadar;&lt;br /&gt;- &lt;strong&gt;En az 50&lt;/strong&gt;'si teknik içerikli olmaz üzere &lt;strong&gt;130&lt;/strong&gt;'un üzerinde &lt;strong&gt;blog postu&lt;/strong&gt;yla &lt;strong&gt;25 bin&lt;/strong&gt;in üzerinde ziyaretçiyle,&lt;br /&gt;- &lt;strong&gt;18 seminer&lt;/strong&gt; ve &lt;strong&gt;9 webiner&lt;/strong&gt; ile &lt;strong&gt;800&lt;/strong&gt;'ün üzerinde kişiyle,&lt;br /&gt;- Yaklaşık &lt;strong&gt;20 makale&lt;/strong&gt;, &lt;strong&gt;17 video&lt;/strong&gt; ve &lt;strong&gt;2 dergi yazım&lt;/strong&gt; ile yazgelistir.com, msakademik.net, turkaspx.net, nedirtv.com gibi sitelerde ve PC Magazine dergisinde sayısı pekte az olmayan okur ve izleyenle buluştum, bilgiyi paylaşmaya, paylaştıkça arttırmaya çalıştım.&lt;br /&gt;&lt;br /&gt;Umarım büyük haz alarak yaptığım bu işlere askerden döndüğümde de aynı şekilde devam edebilirim.&lt;br /&gt;&lt;br /&gt;Tekrar görüşmek dileğiyle, bana ve tüm Mehmetçiklere hayırlı teskereler...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-8431510231850371133?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/8431510231850371133/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=8431510231850371133' title='5 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/8431510231850371133'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/8431510231850371133'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2007/12/ksa-bir-veda.html' title='Kısa Bir &quot;Veda&quot;'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-7393446055313319657</id><published>2007-12-10T09:37:00.000+02:00</published><updated>2007-12-10T09:42:52.042+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='asp.net 3.5'/><title type='text'>ASP.NET 3.5 Extensions CTP Preview Resmen Duyuruldu</title><content type='html'>Geçtiğimiz günlerde blogumda hem duyurusunu, hem de detaylı açıklamalarını yaptığım ASP.NET 3.5 Extensions paketinin CTP Preview sürümü bugün resmen duyuruldu. Detaylı bilgiler ve download işlemi için &lt;a href="http://asp.net/downloads/3.5-extensions/" target="_blank"&gt;bu linki&lt;/a&gt; kullanabilirsiniz.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;em&gt;Bu paket ile ilgili kurulumları yapmayı ve ilk izlenimlerimi de sizlere iletmeyi çok isterdim ama yarın akşam askerim. Askerden sonra RTM sürümünün izlenimlerini sizlere iletmek dileğiyle :)&lt;/em&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-7393446055313319657?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/7393446055313319657/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=7393446055313319657' title='1 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/7393446055313319657'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/7393446055313319657'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2007/12/aspnet-35-extensions-ctp-preview-resmen.html' title='ASP.NET 3.5 Extensions CTP Preview Resmen Duyuruldu'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-2338631682764659222</id><published>2007-12-05T19:23:00.003+02:00</published><updated>2008-07-22T20:58:32.760+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='asp.net ajax'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net 3.5'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net mvc'/><title type='text'>ASP.NET 3.5 Extensions</title><content type='html'>&lt;p&gt;.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: &lt;strong&gt;ASP.NET 3.5 Extensions&lt;/strong&gt;. Aslında Microsoft bunun bir benzerini ASP.NET 2.0'ın ardından ASP.NET AJAX Extension'ı duyurarak 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 &lt;a href="http://weblogs.asp.net/scottgu/archive/2007/11/29/net-web-product-roadmap-asp-net-silverlight-iis7.aspx" target="_blank"&gt;&lt;strong&gt;.NET Web Product Roadmap&lt;/strong&gt;&lt;/a&gt; başlıklı yazısından da gerekli bilgileri edinebilirsiniz. &lt;/p&gt;&lt;p&gt;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. ASP.NET 3.5 ile ilgili geçen ay yazdığım &lt;a href="http://umutluoglu.blogspot.com/2007/11/aspnet-35-ile-gelen-yenilikler.html" target="_blank"&gt;&lt;strong&gt;yazıda&lt;/strong&gt;&lt;/a&gt; ASP.NET Futures paketi ile gelen kontrollerin eklenmediğinden şikayetçi olmuştum hatırlayacağınız gibi. Sanırım benim ve çoğu web programcısının sesini duymuşlar :) Aşağıda bizleri bekleyen yenilikleri hakkında kısa bilgileri bulabilirsiniz.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;ASP.NET MVC Framework&lt;/strong&gt;: Bu kısmı çok uzun anlatmama gerek yoktur sanırım. Zira bir önceki &lt;a href="http://umutluoglu.blogspot.com/2007/12/aspnet-mvc-nedir.html" target="_blank"&gt;&lt;strong&gt;yazımın&lt;/strong&gt;&lt;/a&gt; içeriği tamamen bu uygulama desenini anlatıyor. MVC (Model View Controller) adı verilen uygulama deseni ile uygulamanın üç ayrı katmanda yazılması yoluna gidiliyor. Model kısmında veri ile ilgili nesneler (DataTable, DataSet ve kendi veri nesnelerimiz), View kısmında User Interface'lerimiz (aspx, ascx, master sayfalar) Controller kısmında ise kullanıcının View ve Model kısmındaki nesneler ile etkileşimini sağlayacak class'larımızın bulunmasını öngören bu model yavaş yavaş günlük hayatımıza girecek gibi.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;ASP.NET AJAX Tarafındaki Geliştirmeler&lt;/strong&gt;: Futures paketinden tanıdığımız &lt;strong&gt;History&lt;/strong&gt; kontrolü bu paketin içerisinde olacak. AJAX sayfalarında tarayıcıdaki ileri-geri gitme problemini çözecek olan bu kontrol asenkron postbackler esnasında sayfanın URL kısmını değiştirerek tarayıcının değişen sayfa içeriklerini geçmişine kaydetmesini sağlıyor. Umarım bu kontrol aynı zamanda arama motorlarının asenkron postback ile değişen sayfa içeriklerini de yakalamasını sağlayabilir. Ya da ilerleyen günlerde ASP.NET ekibi bu yönde geliştirmeler yapabilir.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Dinamik Veri (Dynamic Data) Desteği&lt;/strong&gt;: Yine Futures paketinden tanıdığımız bir özellik. &lt;strong&gt;DynamicAutoData&lt;/strong&gt;, &lt;strong&gt;DynamicList&lt;/strong&gt;, &lt;strong&gt;DynamicNavigator&lt;/strong&gt;, &lt;strong&gt;DynamicRssLink&lt;/strong&gt; ve adını hatırlayamadığım bazı veri kontrolleri ile bir veritabanında yapacağımız Select, Insert, Update, Delete gibi işlemleri neredeyse kod yazmadan gerçekleştirebilmemizi sağlıyor. .NET Framework 3.5 ile gelen &lt;strong&gt;Database Markup Language (dbml)&lt;/strong&gt; dosyaları ile dinamik veri kontrollerini birlikte düşününce ve üstüne MVC Framework'ü de katınca bu yeniliklerin MVC'nin &lt;strong&gt;Model&lt;/strong&gt; katmanını oluşturacağını söyleyebiliriz.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;SilverLight Desteği&lt;/strong&gt;: SilverLight artık ASP.NET ile giderek bütünleşiyor. Tahminen yine Futures paketindeki &lt;strong&gt;Media&lt;/strong&gt; ve &lt;strong&gt;XAML&lt;/strong&gt; kontrollerinin ekleneceği bu pakette ASP.NET ile SilverLight'ın entegrasyonunun daha da kolaylaşacak. Yani daha interaktif daha zengin içerikli sayfalar geliyor.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;ADO.NET Veri Servisleri (Data Services)&lt;/strong&gt;: ADO.NET Entity Framework adı verilen bu pakette ASP.NET 3.5 Extensions ile birlikte duyurulacak. Object Relation Mapping (ORM) desteği ile daha da güçlenen .NET Framework 3.5'teki veri işlemleri aslında bu framework altında toplanıyor gibi. Artık veri ile ilgili her türlü işlemi oluşturacağımız veya SqlMetal aracı ile oluşturulacak class'lar ile gerçekleştireceğiz gibi...&lt;/p&gt;&lt;p&gt;Yine ASP.NET Futures'la gelen IronPhyton ve Managed JScript gibi dinamik diller ile ilgili olarak Scott Guthrie'ın postunda bir bilgi göremedim ama bir soruya yazdığı yorumda bu konuda da çalışmaların olduğunu belirtmiş. Bu konuyla ilgili de yenilikler gelecek gibi.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-2338631682764659222?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/2338631682764659222/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=2338631682764659222' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/2338631682764659222'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/2338631682764659222'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2007/12/aspnet-35-extensions.html' title='ASP.NET 3.5 Extensions'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-6148152140915203501</id><published>2007-12-03T23:54:00.001+02:00</published><updated>2008-07-22T20:57:54.909+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='asp.net'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net mvc'/><title type='text'>ASP.NET MVC Nedir?</title><content type='html'>&lt;p&gt;Son zamanlarda yabancı kaynakları takip ediyorsanız eminim ki &lt;strong&gt;MVC&lt;/strong&gt; harflerini ASP.NET'in hemen yanında sıklıkla görmüşsünüzdür. MVC yani &lt;strong&gt;Model View Controller&lt;/strong&gt;. 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. &lt;/p&gt;&lt;p&gt;MVC uygulamanın &lt;strong&gt;Model&lt;/strong&gt;, &lt;strong&gt;View&lt;/strong&gt; ve &lt;strong&gt;Controller&lt;/strong&gt; olarak üçe ayrılmasını benimseyen bir tasarım desenidir. &lt;/p&gt;&lt;p&gt;&lt;img id="BLOGGER_PHOTO_ID_5139883505961323362" style="margin: 0px 10px 10px 0px; float: left;" alt="" src="http://1.bp.blogspot.com/_657dzC0AiLc/R1SI0P-2y2I/AAAAAAAAAGE/965GjV9qoiY/s320/scott_aspnet_mvc.gif" border="0" /&gt;&lt;strong&gt;- Model&lt;/strong&gt; veri ve durum bilgilerini taşır. Burası DataTable, DataSet ve entity katmanımızdaki sınıfların bulunduğu bileşendir. &lt;/p&gt;&lt;p&gt;&lt;strong&gt;- View&lt;/strong&gt; uygulamanın arayüzlerinin bulunduğu bileşendir. Master sayfalar, aspx ve ascx gibi kullanıcının görüntüleyeceği dosyalar bu kısımda yer alır. &lt;/p&gt;&lt;p&gt;&lt;strong&gt;- Controller&lt;/strong&gt; ise arayüzler arasındaki etkileşimi sağlayan, veri nesneleri üzerinde değişiklik yapılmasını sağlayan bileşenlerdir. İşte burada benim çok ilgimi çeken bir yenilik çıkıyor karşımıza. Controller katmanındaki sınıflar aracılığıyla etkin URL Mapping işlemi yaparak artık tarayıcı üzerinden sayfalara istek yapmak yerine nesnelere istekte bulunabiliyoruz. Yani URL üzerinden tarayıcıda görüntülenecek nesnenin render edilmesi sağlanabiliyor.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Sol kısımdaki resimde bu desenin bir projeye nasıl uygulandığının basit bir örneğini görebilirsiniz. MVC tasarım deseni, önümüzdeki yıllarda bir ASP.NET programcısının hayatına girecek önemli kavramlardan biri olacak gibi. Zira Microsoft ASP.NET yazılım geliştirme grubunun önümüzdeki günlerde çıkarmayı düşündüğü &lt;strong&gt;ASP.NET 3.5 Extensions&lt;/strong&gt; ile birlikte resmen web uygulamarına dahil edilecek bu desen. Üzerinden daha detaylı araştırmalar ve çalışmalar yapılması gereken konular. Ben askerde iken eminim ki ASP.NET 3.5 Extensions ve ASP.NET MVC konularında birçok teknik yazı yazılacaktır. İnşallah dönüşte keyifle okuyabilirim.&lt;/p&gt;&lt;p&gt;Daha detaylı bilgiler için Scott Guthrie'nin blogundaki şu başlıkları okuyabilirsiniz:&lt;br /&gt;&lt;a href="http://weblogs.asp.net/scottgu/archive/2007/10/14/asp-net-mvc-framework.aspx"&gt;ASP.NET MVC Framework&lt;/a&gt;&lt;br /&gt;&lt;a href="http://weblogs.asp.net/scottgu/archive/2007/11/13/asp-net-mvc-framework-part-1.aspx"&gt;ASP.NET MVC Framework (Part 1)&lt;/a&gt;&lt;br /&gt;&lt;a href="http://weblogs.asp.net/scottgu/archive/2007/12/03/asp-net-mvc-framework-part-2-url-routing.aspx"&gt;ASP.NET MVC Framework (Part 2): URL Routing&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-6148152140915203501?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/6148152140915203501/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=6148152140915203501' title='2 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/6148152140915203501'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/6148152140915203501'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2007/12/aspnet-mvc-nedir.html' title='ASP.NET MVC Nedir?'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_657dzC0AiLc/R1SI0P-2y2I/AAAAAAAAAGE/965GjV9qoiY/s72-c/scott_aspnet_mvc.gif' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-5358070789598528531</id><published>2007-11-30T19:36:00.001+02:00</published><updated>2007-12-01T11:24:58.280+02:00</updated><title type='text'>PC Magazine Aralık Sayısındaki Yazım</title><content type='html'>&lt;p&gt;&lt;img style="BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height="142" alt="pcmagazine_aralik" src="http://lh3.google.com/umutluoglu/R1BKCviElUI/AAAAAAAAAF8/LK01X_-Tr6g/pcmagazine_aralik_thumb%5B1%5D" width="104" align="left" border="0" /&gt;PC Magazine Aralık sayısı bayilerde!&lt;/p&gt;&lt;p&gt;Bu sayıda da &lt;strong&gt;ASP.NET AJAX ile Resim Slayt Gösterisi Hazırlamak&lt;/strong&gt; konulu bir yazı hazırladım. UpdatePanel ve Timer kontrolünü kullanarak sıfırdan bir resim slaytının nasıl hazırlanacağı konusundaki bu yazımı ve birbirinden değerli yazıları okumak için PC Magazine'in Aralık ayını satış noktalarından temin edebilirsiniz. Bu ay ki sayıda yazı dışında küçükte bir süprizim var! Dergi ile birlikte temin edeceğiniz DVD'de ASP.NET ile ilgili hazırlamış olduğum &lt;strong&gt;üç tane görsel ders&lt;/strong&gt;te bulunmakta. Kaçırmayın derim :)&lt;/p&gt;&lt;p&gt;Aralık sayısının içeriğini görmek için &lt;a href="http://www.pcmagazine.com.tr/icindekiler,19@2500.html" target="_blank"&gt;&lt;strong&gt;buraya tıklayabilirsiniz&lt;/strong&gt;&lt;/a&gt;.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-5358070789598528531?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/5358070789598528531/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=5358070789598528531' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/5358070789598528531'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/5358070789598528531'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2007/11/pc-magazine-aralk-saysndaki-yazm.html' title='PC Magazine Aralık Sayısındaki Yazım'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-8563228813825472016</id><published>2007-11-21T15:10:00.001+02:00</published><updated>2007-11-21T18:01:09.898+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='webiner'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net 3.5'/><category scheme='http://www.blogger.com/atom/ns#' term='seminer'/><title type='text'>Visual Studio 2008 ve ASP.NET 3.5 Sunumları</title><content type='html'>&lt;p&gt;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 &lt;strong&gt;Visual Studio 2008&lt;/strong&gt; ve &lt;strong&gt;ASP.NET 3.5&lt;/strong&gt; 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.&lt;/p&gt;&lt;p&gt;Aşağıda seminerlerde kullandığımız sunum dosyalarını bulabilirsiniz.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;a href="http://www.nedirtv.com/Files/etkinlikler/webiner_21kasim/sunum_VS2008.ppt" target="_blank"&gt;Visual Studio 2008&lt;/a&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;a href="http://www.nedirtv.com/Files/etkinlikler/webiner_21kasim/sunum_ASPNET35.ppt" target="_blank"&gt;ASP.NET 3.5&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;Aşağıda da Fatih Üniversitesi seminerinden iki kare bulunmakta.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_657dzC0AiLc/R0RUnPiElRI/AAAAAAAAAFE/_YUHP39KUU0/s1600-h/fatih_universitesi_2.jpg" target="_blank"&gt;&lt;img id="BLOGGER_PHOTO_ID_5135322508270277906" style="CURSOR: hand" height="140" alt="" src="http://3.bp.blogspot.com/_657dzC0AiLc/R0RUnPiElRI/AAAAAAAAAFE/_YUHP39KUU0/s320/fatih_universitesi_2.jpg" width="200" border="0" /&gt;&lt;/a&gt; &lt;a href="http://1.bp.blogspot.com/_657dzC0AiLc/R0RUtviElSI/AAAAAAAAAFM/LdKxUO21StE/s1600-h/fatih_universitesi_1.jpg" target="_blank"&gt;&lt;img id="BLOGGER_PHOTO_ID_5135322619939427618" style="CURSOR: hand" alt="" src="http://1.bp.blogspot.com/_657dzC0AiLc/R0RUtviElSI/AAAAAAAAAFM/LdKxUO21StE/s200/fatih_universitesi_1.jpg" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-8563228813825472016?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/8563228813825472016/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=8563228813825472016' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/8563228813825472016'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/8563228813825472016'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2007/11/visual-studio-2008-ve-aspnet-35_21.html' title='Visual Studio 2008 ve ASP.NET 3.5 Sunumları'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_657dzC0AiLc/R0RUnPiElRI/AAAAAAAAAFE/_YUHP39KUU0/s72-c/fatih_universitesi_2.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-4831590763391992639</id><published>2007-11-19T14:52:00.001+02:00</published><updated>2007-11-19T14:55:28.339+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='webiner'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net 3.5'/><title type='text'>Visual Studio 2008 ve ASP.NET 3.5 Webineri</title><content type='html'>&lt;a href="http://4.bp.blogspot.com/_657dzC0AiLc/R0GHcPiElQI/AAAAAAAAAE8/1_gKgIAYLwM/s1600-h/logo_vs2008_aspnet35.gif"&gt;&lt;img id="BLOGGER_PHOTO_ID_5134533969454601474" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://4.bp.blogspot.com/_657dzC0AiLc/R0GHcPiElQI/AAAAAAAAAE8/1_gKgIAYLwM/s320/logo_vs2008_aspnet35.gif" border="0" /&gt;&lt;/a&gt;&lt;strong&gt;21 Kasım 2007 Çarşamba&lt;/strong&gt; günü saat &lt;strong&gt;10.00 - 12.00&lt;/strong&gt; arasında internetten canlı olarak yayınlanacak webinere (web seminerine) davetlisiniz. Türkiye'de yapılacak bu &lt;u&gt;ilk&lt;/u&gt; Visual Studio 2008 ve ASP.NET 3.5 webineri ile bu ayın sonunda çıkacak yeni teknolojileri görme fırsatı bulabilirsiniz.&lt;br /&gt;&lt;p&gt;Webiner ile ilgili bilgiler aşağıdadır:&lt;/p&gt;&lt;p&gt;Konuşmacılar:&lt;br /&gt;&lt;b&gt;Burak BATUR&lt;/b&gt; (MS Akademik Editörü)&lt;br /&gt;&lt;b&gt;Uğur UMUTLUOĞLU&lt;/b&gt; (MS Akademik Editörü) &lt;/p&gt;&lt;p&gt;Tarih: &lt;b&gt;21 Kasım 2007 Çarşamba&lt;/b&gt;&lt;br /&gt;Saat: &lt;b&gt;10.00 - 12.00&lt;/b&gt;&lt;/p&gt;&lt;p&gt;Katılım Adresi: &lt;a href="https://www112.livemeeting.com/cc/microsoft/join?id=MSAkademik_VS2008&amp;amp;role=attend&amp;amp;pw=MSAkademik"&gt;https://www112.livemeeting.com/cc/microsoft/join?id=MSAkademik_VS2008&amp;amp;role=attend&amp;amp;pw=MSAkademik&lt;/a&gt;&lt;/p&gt;&lt;p&gt;Meeting ID: &lt;b&gt;MSAkademik_VS2008&lt;/b&gt;&lt;br /&gt;Attendee Entry Code: &lt;b&gt;MSAkademik&lt;/b&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-4831590763391992639?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/4831590763391992639/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=4831590763391992639' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/4831590763391992639'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/4831590763391992639'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2007/11/visual-studio-2008-ve-aspnet-35.html' title='Visual Studio 2008 ve ASP.NET 3.5 Webineri'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_657dzC0AiLc/R0GHcPiElQI/AAAAAAAAAE8/1_gKgIAYLwM/s72-c/logo_vs2008_aspnet35.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-3829103742216500097</id><published>2007-11-19T01:39:00.000+02:00</published><updated>2007-11-19T01:54:52.125+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='kişisel'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net 3.5'/><category scheme='http://www.blogger.com/atom/ns#' term='seminer'/><title type='text'>Fatih Üniversitesi Seminerleri</title><content type='html'>&lt;p&gt;&lt;strong&gt;20 Kasım 2007 Salı&lt;/strong&gt; g&amp;#252;n&amp;#252; &lt;strong&gt;ben&lt;/strong&gt;, &lt;strong&gt;Burak Selim Şenyurt&lt;/strong&gt; ve &lt;strong&gt;Burak Batur &lt;/strong&gt;ger&amp;#231;ekleştireceğimiz sunumlarla &lt;strong&gt;Fatih &amp;#220;niversitesi&lt;/strong&gt; &amp;#246;ğrencileriyle birlikte olacağız. Bu etkinliğin belki de en &amp;#246;nemli y&amp;#246;n&amp;#252; T&amp;#252;rkiye'de &lt;strong&gt;Visual Studio 2008 ve ASP.NET 3.5&lt;/strong&gt; konularında yapılacak &lt;u&gt;ilk seminer&lt;/u&gt; olması! &lt;/p&gt;  &lt;p&gt;Saat &lt;strong&gt;12.00-15.30&lt;/strong&gt; arasında ger&amp;#231;ekleşecek seminerlerin programları aşağıdadır. &lt;/p&gt;  &lt;p&gt;12.00 - 13.00: &lt;strong&gt;Yazılımda Kariyer&lt;/strong&gt; (Burak Selim ŞENYURT)     &lt;br /&gt;13.00 - 13.50: &lt;strong&gt;Visual Studio 2008&lt;/strong&gt; (Burak BATUR)     &lt;br /&gt;14.00 - 15.30: &lt;strong&gt;ASP.NET 3.5&lt;/strong&gt; (Uğur UMUTLUOĞLU) &lt;/p&gt;  &lt;p&gt;Fatih &amp;#220;niversitesi İstanbul B&amp;#252;y&amp;#252;k&amp;#231;ekmece Kamp&amp;#252;s&amp;#252;nde Kırmızı Salon A-351'de ger&amp;#231;ekleşecek oturumlara katılımlarınızı bekliyoruz.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-3829103742216500097?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/3829103742216500097/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=3829103742216500097' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/3829103742216500097'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/3829103742216500097'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2007/11/fatih-niversitesi-seminerleri.html' title='Fatih Üniversitesi Seminerleri'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-3870231107200191428</id><published>2007-11-14T18:46:00.000+02:00</published><updated>2007-11-14T18:48:34.840+02:00</updated><title type='text'>Gençsen Geleceksin</title><content type='html'>&lt;img id="BLOGGER_PHOTO_ID_5132738434418556066" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://2.bp.blogspot.com/_657dzC0AiLc/RzsmaWSDPKI/AAAAAAAAAEU/BSHveqAXUpE/s320/gencsen_geleceksin.png" border="0" /&gt;&lt;br /&gt;&lt;div&gt;GNCTRKCLL ve Microsoft İşbirliğiyle Türkiye Teknoloji Turu Başladı !!!&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;Gençler ve teknoloji severlerin geleceğin teknolojilerine vizyonel bir bakış açısı ile bakmalarını sağlamayı amaçlayan yarım gün sürecek etkinlikler içerisinde mobil teknolojilerden, internetin geleceğine kadar geniş bir yelpazedeki içerik, konusunda uzman konuşmacılar tarafından gerçekleştirilecektir. 30 farklı etkinlik siz teknolojistleri bekliyor...&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;Detaylı bilgiler için: &lt;a href="http://gencsengeleceksin.spaces.live.com/" target="_blank"&gt;http://gencsengeleceksin.spaces.live.com/&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-3870231107200191428?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/3870231107200191428/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=3870231107200191428' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/3870231107200191428'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/3870231107200191428'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2007/11/gensen-geleceksin.html' title='Gençsen Geleceksin'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_657dzC0AiLc/RzsmaWSDPKI/AAAAAAAAAEU/BSHveqAXUpE/s72-c/gencsen_geleceksin.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-7587861830723456600</id><published>2007-11-12T13:48:00.001+02:00</published><updated>2007-11-12T13:48:54.879+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='asp.net 2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='ajax'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net ajax'/><title type='text'>Static Metotlarla AJAX Sayfalarını Daha da Hızlandırın!</title><content type='html'>&lt;p&gt;ASP.NET AJAX istemci ve sunucu merkezli &amp;#xE7;alıştığı i&amp;#xE7;in mimarisi gereği sayfada asenkron postback işlemi başlatsak dahi sunucu tarafında sayfamızın yaşam d&amp;#xF6;ng&amp;#xFC;s&amp;#xFC; tam olarak &amp;#xE7;alışmakta ve sayfa baştan itibaren &amp;#xFC;retilmekte, fakat istemciye sadece UpdatePanel'in i&amp;#xE7;eriği g&amp;#xF6;nderilmektedir. Bu işleyiş aslında k&amp;#xF6;t&amp;#xFC; bir durum gibi g&amp;#xF6;z&amp;#xFC;kse de ASP.NET sayfa mimarisi a&amp;#xE7;ısında gerekli bir işlemdir ki; &amp;#xE7;oğu noktada faydalarını da g&amp;#xF6;rebiliriz. Olayın diğer tarafına bakacak olursak sayfanın sunucu tarafında baştan &amp;#xFC;retilmesi biraz da olsa yavaşlığa sebep olacaktır. Eğer sayfanızda bir kontrol&amp;#xFC;n i&amp;#xE7;eriğini asenkron olarak g&amp;#xFC;ncellemek ve bu işlemi hızlı bir şekilde yapmak istiyorsanız sunucu tarafında &amp;#xE7;alışacak &lt;strong&gt;static&lt;/strong&gt; metotlar oluşturarak istemci tarafında hazırlayacağınız basit JavaScript fonksiyonlarıyla da asenkron g&amp;#xFC;ncelleme işlemini ger&amp;#xE7;ekleştirebilirsiniz. Metot static olduğu i&amp;#xE7;in sunucuda sayfanın nesne &amp;#xF6;rneği &amp;#xFC;retilmeden de &amp;#xE7;ağrılabilir bir metot olacaktır. Metot ile ilgili en &amp;#xF6;nemli husus ise &lt;strong&gt;System.Web.Services&lt;/strong&gt; isim alanı altındaki &lt;strong&gt;WebMethod&lt;/strong&gt; niteleyici (attribute) sınıfını uygulaması gerekeceğidir. B&amp;#xF6;ylece istemcide hazırlanan JavaScript fonksiyonu bu metodu asenkron olarak &amp;#xE7;ağırabilecektir. Metot HTML i&amp;#xE7;eriği g&amp;#xFC;ncelleyeceği i&amp;#xE7;in &lt;strong&gt;string&lt;/strong&gt; değer d&amp;#xF6;nd&amp;#xFC;rmelidir. Aşağıda sayfamızın code-behind kısmına yazabileceğimiz &amp;#xF6;rnek metot bulunmaktadır.&lt;/p&gt;  &lt;p&gt;&lt;font face="Tahoma"&gt;&lt;strong&gt;[System.Web.Services.WebMethod]        &lt;br /&gt;&lt;/strong&gt;public &lt;strong&gt;static string&lt;/strong&gt; KareKok(int sayi)       &lt;br /&gt;{       &lt;br /&gt;&amp;#xA0;&amp;#xA0;&amp;#xA0; return Math.Sqrt(sayi).ToString();       &lt;br /&gt;}&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;Gelelim istemci tarafında yapacaklarımıza. Burada en ilgi &amp;#xE7;ekici durumlarımızdan birisi UpdatePanel'e ihtiya&amp;#xE7; duymadan da bu işlemi yapabilmemiz. Bir diğer ayrıntımız ise ScriptManager ile ilgili. Sunucu tarafında yazılmış WebMethod attribute'unu uygulayan static metodu &amp;#xE7;ağırabilmemizi sağlayan &lt;strong&gt;PageMethods&lt;/strong&gt; isimli JavaScript fonksiyonunu kullanabilmek i&amp;#xE7;in ScriptManager'ın &lt;strong&gt;EnablePageMethods&lt;/strong&gt; &amp;#xF6;zelliğini &lt;strong&gt;true&lt;/strong&gt; olarak ayarlamamız gerecektir. Yine istemci tarafında &amp;#xE7;alışacağımız i&amp;#xE7;in sunucu kontrolleri yerine HTML kontrolleri kullanmamız da herhangi bir sakınca yok. İstemci tarafında hazırladığım kodları aşağıda g&amp;#xF6;rebilirsiniz.&lt;/p&gt;  &lt;p&gt;&lt;font face="Tahoma"&gt;&amp;lt;head runat=&amp;quot;server&amp;quot;&amp;gt;      &lt;br /&gt;&amp;#xA0;&amp;#xA0;&amp;#xA0; &amp;lt;title&amp;gt;Untitled Page&amp;lt;/title&amp;gt;       &lt;br /&gt;&amp;#xA0;&amp;#xA0;&amp;#xA0; &amp;lt;script language=&amp;quot;javascript&amp;quot;&amp;gt;       &lt;br /&gt;&lt;/font&gt;&lt;font face="Tahoma"&gt;&lt;strong&gt;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0; function AsenkronMetotCagir()        &lt;br /&gt;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0; {         &lt;br /&gt;&lt;/strong&gt;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0; &lt;em&gt;// Sunucudaki static metodu &amp;#xE7;ağırıyoruz. Sonucu IslemBitti metoduna iletiyoruz&lt;/em&gt;       &lt;br /&gt;&lt;/font&gt;&lt;font face="Tahoma"&gt;&lt;strong&gt;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0; PageMethods.KareKok(form1.txtSayi.value, IslemBitti);        &lt;br /&gt;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0; }&lt;/strong&gt;       &lt;br /&gt;&lt;/font&gt;&lt;strong&gt;&lt;font face="Tahoma"&gt;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0; function IslemBitti(deger)        &lt;br /&gt;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0; {&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;em&gt;&lt;font face="Tahoma"&gt;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0; // İşlemin sonucunu sonuc adındaki span etiketine yazdırıyoruz&lt;/font&gt;&lt;/em&gt;&lt;strong&gt;      &lt;br /&gt;&lt;font face="Tahoma"&gt;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0; document.getElementById('sonuc').innerHTML = deger;        &lt;br /&gt;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0; }&lt;/font&gt;&lt;/strong&gt;     &lt;br /&gt;&lt;font face="Tahoma"&gt;&amp;#xA0;&amp;#xA0;&amp;#xA0; &amp;lt;/script&amp;gt;      &lt;br /&gt;&amp;lt;/head&amp;gt;       &lt;br /&gt;&amp;lt;body&amp;gt;       &lt;br /&gt;&amp;lt;form id=&amp;quot;form1&amp;quot; runat=&amp;quot;server&amp;quot;&amp;gt;       &lt;br /&gt;&amp;#xA0;&amp;#xA0;&amp;#xA0; &amp;lt;asp:ScriptManager ID=&amp;quot;ScriptManager1&amp;quot; runat=&amp;quot;server&amp;quot; &lt;strong&gt;EnablePageMethods=&amp;quot;true&amp;quot;&lt;/strong&gt; /&amp;gt;       &lt;br /&gt;&amp;#xA0;&amp;#xA0;&amp;#xA0; &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;txtSayi&amp;quot; /&amp;gt;       &lt;br /&gt;&amp;#xA0;&amp;#xA0;&amp;#xA0; &amp;lt;input type=&amp;quot;button&amp;quot; value=&amp;quot;Karek&amp;#xF6;k Bul&amp;quot; onclick=&amp;quot;&lt;strong&gt;AsenkronMetotCagir();&lt;/strong&gt;&amp;quot; /&amp;gt;&amp;amp;nbsp;&amp;lt;br /&amp;gt;       &lt;br /&gt;&amp;#xA0;&amp;#xA0;&amp;#xA0; &amp;lt;span id=&amp;quot;sonuc&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;       &lt;br /&gt;&amp;lt;/form&amp;gt;       &lt;br /&gt;&amp;lt;/body&amp;gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;Bu şekilde sunucu tarafında sayfanın baştan &amp;#xFC;retilmesine gerek kalmadan &amp;#xE7;ok daha hızlı bir şekilde asenkron g&amp;#xFC;ncelleme işlemleri yapabilmekteyiz. Buradaki en b&amp;#xFC;y&amp;#xFC;k sıkıntılarımızdan birisi ise HTML kodunu kendimizin oluşturması gerekeceğidir. Eğer gridview, detailsview gibi kompleks bir kontrol&amp;#xFC;n &amp;#xE7;ıktısını elde etmek istiyorsak ilgili kontrolleri programatik olarak oluşturup &lt;strong&gt;RenderControl&lt;/strong&gt; metodu ile de HTML &amp;#xE7;ıktılarını istemciye yine static metot aracılığıyla g&amp;#xF6;nderebiliriz.&lt;/p&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-7587861830723456600?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/7587861830723456600/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=7587861830723456600' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/7587861830723456600'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/7587861830723456600'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2007/11/static-metotlarla-ajax-sayfalarn-daha.html' title='Static Metotlarla AJAX Sayfalarını Daha da Hızlandırın!'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-5093070080433430201</id><published>2007-11-09T11:20:00.000+02:00</published><updated>2007-11-09T11:31:33.453+02:00</updated><title type='text'>Yazılım Dünyasında Yeni Bir Soluk: turkaspx.net</title><content type='html'>&lt;a href="http://www.turkaspx.net/" target="_blank"&gt;&lt;img id="BLOGGER_PHOTO_ID_5130769146581059298" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://4.bp.blogspot.com/_657dzC0AiLc/RzQnWtZ_huI/AAAAAAAAAEE/hmERGMGjvJg/s320/turkaspx_logo.png" border="0" /&gt;&lt;/a&gt; Geçtiğimiz günlerde değerli iş arkadaşlarım ve hocalarım &lt;strong&gt;Burak Selim Şenyurt&lt;/strong&gt;, &lt;strong&gt;Emrah Uslu&lt;/strong&gt;, &lt;strong&gt;Burak Batur&lt;/strong&gt; ve ben &lt;a href="http://www.turkaspx.net/" target="_blank"&gt;&lt;strong&gt;www.turkaspx.net&lt;/strong&gt;&lt;/a&gt; adresinde yeni bir günlük açtık. Yoğun bir çalışma sonucunda blogumuz yeterli içeriğe kavuştu ve artık buradan da sizlere duyurusunu yapmak istedim.&lt;br /&gt;&lt;br /&gt;turkaspx.net olarak amacımız başta ASP.NET olmak üzere Microsoft teknolojileri hakkında teknik konularda bilgi birikimimizi ve deneyimlerimizi sizlerle paylaşmaktır. Blog sitemizde paylaşacağımız konularla kısa bir süre içerisinde Türkçe içerikli dev bir arşiv oluşturmayı, bir .NET yazılımcısının ihtiyacı olabilecek bir çok konuyu bu çatı altında toplamayı hedefliyoruz.&lt;br /&gt;&lt;br /&gt;Yazılım geliştiriciler için faydalı bir kaynak olması dileğiyle, &lt;a href="http://www.turkaspx.net/" target="_blank"&gt;&lt;strong&gt;www.turkaspx.net&lt;/strong&gt;&lt;/a&gt; hayırlı uğurlu olsun diyorum.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-5093070080433430201?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/5093070080433430201/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=5093070080433430201' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/5093070080433430201'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/5093070080433430201'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2007/11/yazlm-dnyasnda-yeni-bir-soluk.html' title='Yazılım Dünyasında Yeni Bir Soluk: turkaspx.net'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_657dzC0AiLc/RzQnWtZ_huI/AAAAAAAAAEE/hmERGMGjvJg/s72-c/turkaspx_logo.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-3576013655569647167</id><published>2007-11-06T11:15:00.000+02:00</published><updated>2007-11-06T11:26:16.510+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='haberler'/><category scheme='http://www.blogger.com/atom/ns#' term='.net framework 3.5'/><title type='text'>Visual Studio 2008 ve .NET Framework 3.5 Bu Ay Resmen Duyruluyor</title><content type='html'>Ve beklenen haber resmen duyruldu. &lt;strong&gt;Microsoft&lt;/strong&gt;, kasım ayı içerisinde Barcelona'da gerçekleşecek olan &lt;strong&gt;Microsoft TechEd Developers 2007&lt;/strong&gt; etkinliğinde kod adı Orcas olarak bilinen &lt;strong&gt;Visual Studio 2008&lt;/strong&gt; ve &lt;strong&gt;.NET Framework 3.5&lt;/strong&gt; sürümlerini resmen duyuracağını ve release edeceğini duyurdu. Ayrıntıları &lt;a href="http://www.microsoft.com/presspass/press/2007/nov07/11-05TechEdDevelopersPR.mspx" target="_blank"&gt;bu linkteki&lt;/a&gt; haberden okuyabilirsiniz.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-3576013655569647167?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/3576013655569647167/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=3576013655569647167' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/3576013655569647167'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/3576013655569647167'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2007/11/visual-studio-2008-ve-net-framework-35.html' title='Visual Studio 2008 ve .NET Framework 3.5 Bu Ay Resmen Duyruluyor'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-7037727320898594922</id><published>2007-11-06T01:03:00.001+02:00</published><updated>2008-04-20T08:37:24.002+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ajax'/><category scheme='http://www.blogger.com/atom/ns#' term='linq'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net 3.5'/><title type='text'>ASP.NET 3.5 ile Gelen Yenilikler</title><content type='html'>&lt;a href="http://1.bp.blogspot.com/_657dzC0AiLc/RzArRagNhII/AAAAAAAAAD8/0-Yb1oK4ISc/s1600-h/aspnet35_logo.png"&gt;&lt;img id="BLOGGER_PHOTO_ID_5129647553747190914" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://1.bp.blogspot.com/_657dzC0AiLc/RzArRagNhII/AAAAAAAAAD8/0-Yb1oK4ISc/s320/aspnet35_logo.png" border="0" /&gt;&lt;/a&gt; &lt;div&gt;Önümüzdeki günlerde resmen duyrulacak olan &lt;strong&gt;Visual Studio 2008&lt;/strong&gt; ve &lt;strong&gt;.NET Framework 3.5&lt;/strong&gt; ile birlikte &lt;strong&gt;ASP.NET&lt;/strong&gt;'te &lt;strong&gt;3.5&lt;/strong&gt; 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 &lt;strong&gt;AJAX&lt;/strong&gt; ve &lt;strong&gt;LINQ&lt;/strong&gt;'nun olduğunu belirtecek olursak aslında bizi oldukça önemli yeniliklerin de beklediğini söyleyebilirim. Dikkatimi çeken noktalardan biri &lt;strong&gt;ASP.NET Futures&lt;/strong&gt; paketi ile gelen bazı kontrollerden şu an için Microsoft'un sitesinde bahsedilmemesiydi. Önceki &lt;a href="http://umutluoglu.blogspot.com/2007/11/net-framework-35-ile-gelen-yeni.html"&gt;post&lt;/a&gt;umda 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.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;ASP.NET AJAX Entegrasyonu&lt;/strong&gt;&lt;br /&gt;ASP.NET AJAX, ASP.NET ortamında hızlı ve kolay bir şekilde AJAX uygulamaları geliştirmemizi sağlayan ücretsiz bir AJAX framework'üdür. ASP.NET 2.0'ın ardından duyrulan ve bu yılın başında resmi sürümü çıkarılan AJAX Extension'ları ASP.NET 3.5 ile mimariyle bütünleşik şekilde geliyor. Visual Studio 2008'de açılan ASP.NET 3.5 web uygulamasında AJAX Extension kontrollerini kullanarak hızlı şekilde AJAX uygulamaları geliştirebiliyoruz. Bu sürümü ile birlikte bazı eksiklikler ve sorunlar giderilerek artık ASP.NET AJAX'ın sunucu kontrolleriyle tam uyumlu şekilde çalışması da sağlanıyor. Visual Studio 2008 ile birlikte &lt;strong&gt;Control Toolkit&lt;/strong&gt;'te yer alan kontrollerin varolan sunucu kontrollerine çok kolay şekilde entegre edilebilmesi de işimizi kolaylaştıracak bir yenilik olarak göze çarpıyor.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;LINQ (Language Integrated Query)&lt;br /&gt;&lt;/strong&gt;.NET Framewrok 3.5 ile birlikte artık web uygulamalarında da &lt;strong&gt;Linq&lt;/strong&gt; hayatımıza girecek. Linq dil ile bütünleşik olarak sorgulamalar yapmamızı sağlayan bir query şeklidir diyebilirim. Veritabanında SQL query'leri kullanarak nasıl sorgulamalar yapıyor ve sorgu sonucunu elde edebiliyorsak, artık C# veya VB.NET gibi bir dil ile de uygulama içerisindeki bir nesnenin içeriği ile ilgili SQL sorgu cümlelerine benzer şekilde sorgulamalar gerçekleştirebileceğiz. ASP.NET 3.5 ile gelen kontrollerden biri olan &lt;strong&gt;LinqDataSource&lt;/strong&gt; kontrolü de bu tip sorgulamaların sonucunu bir veri kontrolüne (GridView, DataList gibi) bağlayabilmemizi sağlıyor.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;ListView ve DataPager Kontrolleri&lt;br /&gt;LinqDataSource&lt;/strong&gt; kontrolü dışında &lt;strong&gt;ListView&lt;/strong&gt; ve &lt;strong&gt;DataPager&lt;/strong&gt; adında iki yeni kontrol daha geliyor. ListView veri ekleme, güncelleme, silme, sayfalama gibi işlemleri yapabilen ve GridView kontrolüne oldukça benzer bir kontrol. GridView'daki en büyük sıkıntılarımızdan biri görüntülenecek olan verilerin HTML arayüzlerini tasarlamakta karşılaştığımız sorunlardı. ListView kontrolü ise yapısındaki template'ler aracılığıyla verilerin görüntüleneceği arayüzün HTML kodlarını dilediğimiz gibi oluşturabilmemizi sağlıyor. DataPager kontrolü ise ListView ile yapılan işlemlerde kayıtların esnek şekilde sayfalandırılması işleminde kullanılıyor. Bu kontrolün yaptığın temel işlemin sayfalama kısmının ne şekilde görüntüleneceği ve çalışağını belirlemek olduğunu söyleyebilirim. Örneğin sayfa numaralarının görüntüleneceği kısma bir TextBox kontrolü ekleyip yazılan numaradaki sayfaya gidilmesi işlemini DataPager kontrolü ile oldukça kolay şekilde gerçekleştirebiliyoruz.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Web Servislerinde WCF Desteği&lt;/strong&gt;&lt;br /&gt;Web servisleri artık .NET Framework 3.0 ile gelen &lt;strong&gt;WCF (Windows Communication Foundation)&lt;/strong&gt; desteği ile geliştirilebiliyor. JSON kullanılan AJAX uygulamalarında ve RSS kaynaklarından veri sağlanması gibi işlemler artık WCF ile daha da kolay şekilde gerçekleştirilebilecek.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-7037727320898594922?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/7037727320898594922/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=7037727320898594922' title='1 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/7037727320898594922'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/7037727320898594922'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2007/11/aspnet-35-ile-gelen-yenilikler.html' title='ASP.NET 3.5 ile Gelen Yenilikler'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_657dzC0AiLc/RzArRagNhII/AAAAAAAAAD8/0-Yb1oK4ISc/s72-c/aspnet35_logo.png' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-1578134481645908679</id><published>2007-11-05T01:44:00.000+02:00</published><updated>2007-11-06T10:54:44.089+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.net framework 3.5'/><title type='text'>.NET Framework 3.5 ile Gelen Yeni Namespace ve Class'lar</title><content type='html'>&lt;a href="http://2.bp.blogspot.com/_657dzC0AiLc/Ry5a0Y4MCkI/AAAAAAAAADk/NTptjow_Ygs/s1600-h/framework35.png"&gt;&lt;img id="BLOGGER_PHOTO_ID_5129136881699392066" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://2.bp.blogspot.com/_657dzC0AiLc/Ry5a0Y4MCkI/AAAAAAAAADk/NTptjow_Ygs/s320/framework35.png" border="0" /&gt;&lt;/a&gt; &lt;div&gt;Sevgili arkadaşım &lt;strong&gt;&lt;a href="http://daron.yondem.com/tr/default.aspx" target="_blank"&gt;Daron YÖNDEM&lt;/a&gt;&lt;/strong&gt;'in blogunda az önce gördüğüm güzel bir posteri sizlerle paylaşmak istedim. &lt;strong&gt;.NET Framework 3.5&lt;/strong&gt; 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.&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;Listeyi &lt;a href="http://download.microsoft.com/download/4/a/3/4a3c7c55-84ab-4588-84a4-f96424a7d82d/NET35_Namespaces_Poster_LORES.pdf" target="_blank"&gt;http://download.microsoft.com/download/4/a/3/4a3c7c55-84ab-4588-84a4-f96424a7d82d/NET35_Namespaces_Poster_LORES.pdf&lt;/a&gt; linkinden indirebilirsiniz.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-1578134481645908679?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/1578134481645908679/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=1578134481645908679' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/1578134481645908679'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/1578134481645908679'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2007/11/net-framework-35-ile-gelen-yeni.html' title='.NET Framework 3.5 ile Gelen Yeni Namespace ve Class&apos;lar'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_657dzC0AiLc/Ry5a0Y4MCkI/AAAAAAAAADk/NTptjow_Ygs/s72-c/framework35.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-7259829565100368319</id><published>2007-11-02T17:32:00.000+02:00</published><updated>2007-11-06T10:57:05.146+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='asp.net 2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='sunum'/><category scheme='http://www.blogger.com/atom/ns#' term='seminer'/><title type='text'>Sakarya Üniversitesi Seminerinin Ardından</title><content type='html'>&lt;a href="http://2.bp.blogspot.com/_657dzC0AiLc/RytCnI4MCiI/AAAAAAAAADU/EwYy4BdhI-k/s1600-h/sakarya_seminer_1.jpg" target="_blank"&gt;&lt;img id="BLOGGER_PHOTO_ID_5128265840856926754" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" height="131" alt="" src="http://2.bp.blogspot.com/_657dzC0AiLc/RytCnI4MCiI/AAAAAAAAADU/EwYy4BdhI-k/s320/sakarya_seminer_1.jpg" width="200" border="0" /&gt;&lt;/a&gt;Dün &lt;strong&gt;Sakarya Üniversitesi&lt;/strong&gt;'nde &lt;strong&gt;ASP.NET 2.0&lt;/strong&gt; seminerini gerçekleştirdik. ASP.NET 2.0 ile birlikte gelen birçok yeniliği örnek çalışmalarla birlikte seminere katılan yaklaşık yüz kişiyle paylaşma şansım oldu.&lt;br /&gt;&lt;br /&gt;Sakarya'yı ilk ziyaretimdi ve Sakarya ile ilgili oldukça güzel izlenimlerim oldu. Sakarya Üniversitesi'ndeki öğrenci arkadaşların özellikle misafirperverliği beni onlara karşı mahçup bıraktı diyebilirim. Başta &lt;strong&gt;Halime ÖZSOY&lt;/strong&gt; ve &lt;strong&gt;Mustafa EKİCİM&lt;/strong&gt; olmak üzere tüm &lt;strong&gt;Sakarya Üniversitesi Bilgisayar Kulübü&lt;/strong&gt; üyelerine teşekkürlerimi buradan da sunmak istiyorum.&lt;br /&gt;&lt;br /&gt;Aşağıdaki linklerden seminerde kullandığım sunum dosyasını ve örnekleri bulabilirsiniz.&lt;br /&gt;&lt;a href="http://www.nedirtv.com/Files/etkinlikler/1Kasim_Sakarya_ASPNET/sunum.ppt"&gt;ASP.NET 2.0 - Sunum&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.nedirtv.com/Files/etkinlikler/1Kasim_Sakarya_ASPNET/Sakarya_Demo.zip"&gt;Örnekler&lt;/a&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_657dzC0AiLc/RytDgY4MCjI/AAAAAAAAADc/31WxgbgrHGE/s1600-h/sakarya_seminer_2.jpg" target="_blank"&gt;&lt;img id="BLOGGER_PHOTO_ID_5128266824404437554" style="CURSOR: hand" height="133" alt="" src="http://3.bp.blogspot.com/_657dzC0AiLc/RytDgY4MCjI/AAAAAAAAADc/31WxgbgrHGE/s320/sakarya_seminer_2.jpg" width="190" border="0" /&gt;&lt;/a&gt; &lt;a href="http://4.bp.blogspot.com/_657dzC0AiLc/Ry5dC44MCmI/AAAAAAAAAD0/3AnYuK5td24/s1600-h/sakarya_seminer_3.JPG" target="_blank"&gt;&lt;img id="BLOGGER_PHOTO_ID_5129139329830750818" style="CURSOR: hand" alt="" src="http://4.bp.blogspot.com/_657dzC0AiLc/Ry5dC44MCmI/AAAAAAAAAD0/3AnYuK5td24/s200/sakarya_seminer_3.JPG" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-7259829565100368319?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/7259829565100368319/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=7259829565100368319' title='2 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/7259829565100368319'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/7259829565100368319'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2007/11/sakarya-niversite-seminerinin-ardndan.html' title='Sakarya Üniversitesi Seminerinin Ardından'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_657dzC0AiLc/RytCnI4MCiI/AAAAAAAAADU/EwYy4BdhI-k/s72-c/sakarya_seminer_1.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-1731970239732923311</id><published>2007-11-02T17:01:00.000+02:00</published><updated>2007-11-06T11:00:08.468+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='kişisel'/><category scheme='http://www.blogger.com/atom/ns#' term='silverlight'/><category scheme='http://www.blogger.com/atom/ns#' term='haberler'/><title type='text'>ASP.NET Seminerim SilverLight Showcase'de</title><content type='html'>&lt;img id="BLOGGER_PHOTO_ID_5128264878784252434" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://2.bp.blogspot.com/_657dzC0AiLc/RytBvI4MChI/AAAAAAAAADM/DC4QmszRNf8/s320/silverlight_2.gif" border="0" /&gt; &lt;div&gt;Değerli hocam &lt;strong&gt;M.Yaşar ÖZDEN&lt;/strong&gt;'in özverili çalışmaları sonucunda &lt;strong&gt;Microsoft SilverLight&lt;/strong&gt;'in resmi sitesinde artık ülkemizin de bayrağı bulunuyor. Geçtiğimiz haftalarda ODTÜ'de gerçekleştirdiğim ve SilverLight teknolojisi ile internetten de canlı olarak yayınladığımız seminerin yer aldığı SİlverLight uygulaması SilverLight'ın resmi sitesinde ki örnekler arasında yer alıyor. &lt;a href="http://silverlight.net/showcase/"&gt;http://silverlight.net/showcase/&lt;/a&gt; sitesinde sol kısımdaki &lt;strong&gt;Geography&lt;/strong&gt; linkinden bayrağımıza tıklayın ve izleyin.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-1731970239732923311?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/1731970239732923311/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=1731970239732923311' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/1731970239732923311'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/1731970239732923311'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2007/11/aspnet-seminerim-silverlight-showcasede.html' title='ASP.NET Seminerim SilverLight Showcase&apos;de'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_657dzC0AiLc/RytBvI4MChI/AAAAAAAAADM/DC4QmszRNf8/s72-c/silverlight_2.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-3217880412266170925</id><published>2007-10-31T16:09:00.000+02:00</published><updated>2007-11-06T10:56:37.175+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='kişisel'/><title type='text'>PC Magazine'de İlk Yazım Yayınlandı</title><content type='html'>&lt;a href="http://www.pcmag.com.tr/icindekiler,18@2500.html" target="_blank"&gt;&lt;img id="BLOGGER_PHOTO_ID_5127505399717300738" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://1.bp.blogspot.com/_657dzC0AiLc/RyiO_o4MCgI/AAAAAAAAADE/PzZ_JB_8xDg/s320/pcmagazine_kasim.gif" border="0" /&gt;&lt;/a&gt;Geçtiğimiz aylarda blogumdan duyurusunu yaptığım ancak ufak bir karışıklık sebebiyle bir ay ertelenen yazım PC Magazine dergisinin Kasım ayında yayınlandı. Yazımın konusu &lt;strong&gt;"ASP.NET AJAX ile Web Uygulamaları Geliştirmek"&lt;/strong&gt;.&lt;br /&gt;&lt;br /&gt;PC Magazine dergisinin kasım ayı içeriğini görmek için &lt;a href="http://www.pcmag.com.tr/icindekiler,18@2500.html" target="_blank"&gt;buraya tıklayabilirsiniz&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-3217880412266170925?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/3217880412266170925/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=3217880412266170925' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/3217880412266170925'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/3217880412266170925'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2007/10/pc-magazinede-ilk-yazm-yaynland.html' title='PC Magazine&apos;de İlk Yazım Yayınlandı'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_657dzC0AiLc/RyiO_o4MCgI/AAAAAAAAADE/PzZ_JB_8xDg/s72-c/pcmagazine_kasim.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-6590804249848606498</id><published>2007-10-31T10:16:00.000+02:00</published><updated>2007-11-06T10:57:45.154+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='asp.net 2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='seminer'/><title type='text'>ASP.NET 2.0 Semineri (Sakarya Üniversitesi)</title><content type='html'>&lt;img style="FLOAT: left; MARGIN: 0px 10px 10px 0px" alt="" src="http://3.bp.blogspot.com/_657dzC0AiLc/RwYepRTJEOI/AAAAAAAAACc/4QIY6Oz9mJA/s320/aspnet.gif" border="0" /&gt;&lt;strong&gt;1 Kasım 2007 Perşembe&lt;/strong&gt; günü &lt;strong&gt;14:00-17:00&lt;/strong&gt; saatleri arasında &lt;strong&gt;Sakarya Üniversitesi&lt;/strong&gt;'nde &lt;strong&gt;ASP.NET 2.0&lt;/strong&gt; semineri veriyor olacağım. Mühendislik Fakültesi D Blok'ta gerçekleşecek olan bu etkinliğe tüm Sakarya Üniversitesi öğrencilerini bekliyorum.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-6590804249848606498?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/6590804249848606498/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=6590804249848606498' title='1 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/6590804249848606498'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/6590804249848606498'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2007/10/aspnet-20-semineri-sakarya-niversitesi.html' title='ASP.NET 2.0 Semineri (Sakarya Üniversitesi)'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_657dzC0AiLc/RwYepRTJEOI/AAAAAAAAACc/4QIY6Oz9mJA/s72-c/aspnet.gif' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-7772325442022698166</id><published>2007-10-30T16:34:00.000+02:00</published><updated>2007-11-06T10:58:12.959+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='asp.net 2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='gridview'/><category scheme='http://www.blogger.com/atom/ns#' term='veri kontrolleri'/><title type='text'>GridView'e Programatik Veri Bağlamada Sayfalama ve Sıralama İşlemleri</title><content type='html'>GridView'e programatik olarak veri bağladığında eğer &lt;strong&gt;sayfalama&lt;/strong&gt;(paging) ve &lt;strong&gt;sıralama&lt;/strong&gt;(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 &lt;strong&gt;PageIndexChanging&lt;/strong&gt;, sıralama işlemi için ise &lt;strong&gt;Sorting&lt;/strong&gt; 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 &lt;strong&gt;ViewState&lt;/strong&gt; 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.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;void GridView1_PageIndexChanging(object sender, &lt;strong&gt;GridViewPageEventArgs e&lt;/strong&gt;)&lt;br /&gt;{&lt;br /&gt;  // e parametresinden gelen index numarasını gridview'ın PageIndex'ine atayıp&lt;br /&gt;  // verileri tekrar bağlamak sayfalama işlemi için yeterli olacaktır&lt;br /&gt;  &lt;strong&gt;GridView1.PageIndex = e.NewPageIndex;&lt;br /&gt;  GridView1.DataBind();&lt;br /&gt;&lt;/strong&gt;}&lt;br /&gt;&lt;br /&gt;void GridView1_Sorting(object sender, &lt;strong&gt;GridViewSortEventArgs e&lt;/strong&gt;)&lt;br /&gt;{&lt;br /&gt;  // İlk sort işlemi yapıldığında çalışır&lt;br /&gt;  if (ViewState["siralananKolon"] == null)&lt;br /&gt;  {&lt;br /&gt;    ViewState.Add("siralananKolon", e.SortExpression);&lt;br /&gt;    ViewState.Add("siralamaYonu", "ASC");&lt;br /&gt;  }&lt;br /&gt;  else&lt;br /&gt;  {&lt;br /&gt;    // Aynı kolon 2. kez sıralandığında çalışır&lt;br /&gt;    if (ViewState["siralananKolon"].ToString() == e.SortExpression)&lt;br /&gt;    {&lt;br /&gt;      if (ViewState["siralamaYonu"].ToString() == "ASC")&lt;br /&gt;        ViewState["siralamaYonu"] = "DESC";&lt;br /&gt;      else&lt;br /&gt;        ViewState["siralamaYonu"] = "ASC";&lt;br /&gt;    }&lt;br /&gt;    // Farklı bir kolon sıralandığında çalışır&lt;br /&gt;    else&lt;br /&gt;    {&lt;br /&gt;      ViewState["siralananKolon"] = e.SortExpression;&lt;br /&gt;      ViewState["siralamaYonu"] = "ASC";&lt;br /&gt;    }&lt;br /&gt;  }&lt;br /&gt;  // Veriyi tekrar yüklemeden önce sıralanacak alanı ve sıralama kriterini belirlemek gerekir.&lt;br /&gt;  // DataTable nesnesini tekrar elde edip, görünümünü(DataView) değiştiriyoruz&lt;br /&gt;  &lt;strong&gt;DataTable dt = (DataTable)GridView1.DataSource;&lt;br /&gt;  dt.DefaultView.Sort = ViewState["siralananKolon"].ToString() + " " +   ViewState["siralamaYonu"].ToString();&lt;br /&gt;  GridView1.DataBind();&lt;br /&gt;&lt;/strong&gt;}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-7772325442022698166?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/7772325442022698166/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=7772325442022698166' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/7772325442022698166'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/7772325442022698166'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2007/10/gridviewe-programatik-veri-balamada.html' title='GridView&apos;e Programatik Veri Bağlamada Sayfalama ve Sıralama İşlemleri'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-3067790775726119590</id><published>2007-10-19T14:59:00.000+03:00</published><updated>2007-11-06T10:58:50.890+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='asp.net ajax'/><category scheme='http://www.blogger.com/atom/ns#' term='seminer'/><title type='text'>Bilkent Üniversitesi Seminerinin Ardından</title><content type='html'>Ankara'daki son günümde dün &lt;strong&gt;Bilkent Üniversitesi&lt;/strong&gt;'ndeydim. Oldukça kalabalık bir katılımla gerçekleşen seminerde &lt;strong&gt;ASP.NET AJAX&lt;/strong&gt; sunumunu gerçekleştirdim ve öğrencilerle Microsoft'un MCPD sertifikasyonu hakkında bilgilerimi paylaştım. Bu güzel günü yine Bilkent Üniversite'sindeki bir kafede geçen güzel ve hoş bir sohbet ile sonlandırdık. Etkinlikte emeği geçen Bilkent Üniversitesi MSP arkadaşım &lt;strong&gt;İlker ACAR&lt;/strong&gt;'a, Çankaya Üniversitesi MSP arkadaşım &lt;strong&gt;Emrah YILMAZ&lt;/strong&gt;'a ve Bilkent Üniversitesi'nden değerli arkadaşım &lt;strong&gt;Ömer ÇELİK&lt;/strong&gt;'e teşekkürlerimi sunarım.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-3067790775726119590?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/3067790775726119590/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=3067790775726119590' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/3067790775726119590'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/3067790775726119590'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2007/10/bilkent-niversitesi-seminerinin-ardndan.html' title='Bilkent Üniversitesi Seminerinin Ardından'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-1019398108941539531</id><published>2007-10-17T23:16:00.000+03:00</published><updated>2007-11-06T10:59:24.307+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='kişisel'/><category scheme='http://www.blogger.com/atom/ns#' term='haberler'/><title type='text'>Türkiye'nin İlk Silverlight Canlı Yayınını Gerçekleştirdik</title><content type='html'>Bugün ODTÜ EDMER Akıllı Sınıf'ta gerçekleştirdiğimiz ASP.NET 2.0 semineri, aynı zamanda ülkemizde SilverLight teknolojisi kullanılarak gerçekleştirilen ilk canlı yayın olma özelliğini taşıyordu. Konuşmacı olarak katıldığım bu seminerde yaklaşık 3.5 saat boyunca ASP.NET 2.0 ile gelen birçok yeniliği katılımcı arkadaşlarla paylaşma fırsatını buldum. Normal bir seminerden veya webinerden farklı olarak onlarca insanında canlı yayında beni izlemesi aslında heyecan verici bir duyguydu. Seminerin ardından Türkiye'nin farklı yerlerinden aldığım bazı teşekkür mailleri de internet aracılığıyla uzağımızdaki birçok insanla bile bilgiyi paylaşabilmenin mutluğunu daha da arttırdı.&lt;br /&gt;&lt;br /&gt;Bu etkinliğin gerçekleşmesinde ve ülkemizde özellikle görsel iletişim araçlarının internet ortamında kullanılmasının yayılmasında belki de başrol oynayan sevgili hocam &lt;strong&gt;Prof.Dr M.Yaşar ÖZDEN&lt;/strong&gt;'e teşekkürlerimi sunuyorum. Yine ODTÜ'deki değerli hocam &lt;strong&gt;Halil ERSOY&lt;/strong&gt;'a ve başta &lt;strong&gt;Murat DUMAN&lt;/strong&gt; olmak üzere tüm ODTÜ MSP arkadaşlarıma yardımlarından dolayı teşekkürlerimi sunuyorum.&lt;br /&gt;&lt;br /&gt;Seminer ile ilgili 2 fotoğrafı blogumda sizlerle paylaşmak istedim. Yine facebook üyesi olanlar &lt;a href="http://www.facebook.com/event.php?eid=6275913851" target="_blank"&gt;&lt;strong&gt;bu linkten&lt;/strong&gt;&lt;/a&gt; etkinlik ile ilgili fotoğraflara erişebilirler. Bu arada seminerin banttan yayınlarını 7 gün 24 saat boyunca &lt;a href="http://ideas.ceit.metu.edu.tr/BotebOnline_vs2005/Pages/Webiner.aspx" target="_blank"&gt;&lt;strong&gt;BOTEBOnline&lt;/strong&gt; &lt;/a&gt;sitesinden erişebilirsiniz. (Bağlantı hızınız ne kadar iyi ise, o kadar kaliteli görüntü elde edeceğinizi de belirtmek isterim)&lt;br /&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_657dzC0AiLc/RxZzzhTJERI/AAAAAAAAAC0/l9XCYJiuE_0/s1600-h/seminer_1.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5122408955129696530" style="CURSOR: hand" alt="" src="http://4.bp.blogspot.com/_657dzC0AiLc/RxZzzhTJERI/AAAAAAAAAC0/l9XCYJiuE_0/s200/seminer_1.jpg" border="0" /&gt;&lt;/a&gt; &lt;a href="http://4.bp.blogspot.com/_657dzC0AiLc/RxZ0IhTJESI/AAAAAAAAAC8/U8U5yyFGkgk/s1600-h/seminer_2.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5122409315906949410" style="CURSOR: hand" height="120" alt="" src="http://4.bp.blogspot.com/_657dzC0AiLc/RxZ0IhTJESI/AAAAAAAAAC8/U8U5yyFGkgk/s200/seminer_2.jpg" width="152" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-1019398108941539531?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/1019398108941539531/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=1019398108941539531' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/1019398108941539531'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/1019398108941539531'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2007/10/trkiyenin-ilk-silverlight-canl-yaynn.html' title='Türkiye&apos;nin İlk Silverlight Canlı Yayınını Gerçekleştirdik'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_657dzC0AiLc/RxZzzhTJERI/AAAAAAAAAC0/l9XCYJiuE_0/s72-c/seminer_1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-2890870968205196897</id><published>2007-10-15T21:58:00.000+03:00</published><updated>2007-11-06T10:59:39.749+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='asp.net 2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='seminer'/><title type='text'>ASP.NET 2.0 Semineri (ODTÜ-Ankara)</title><content type='html'>&lt;img id="BLOGGER_PHOTO_ID_5117811720920305890" style="FLOAT: left; MARGIN: 0px 10px 10px 0px" alt="" src="http://3.bp.blogspot.com/_657dzC0AiLc/RwYepRTJEOI/AAAAAAAAACc/4QIY6Oz9mJA/s320/aspnet.gif" border="0" /&gt;&lt;span style="FONT-WEIGHT: bold"&gt;17 Ekim Çarşamba&lt;/span&gt; günü &lt;span style="FONT-WEIGHT: bold"&gt;ODTÜ EDMER&lt;/span&gt;'de &lt;span style="FONT-WEIGHT: bold"&gt;ASP.NET 2.0&lt;/span&gt; seminerini gerçekleştiriyor olacağız. Seminer salonunda gerçekleşecek olan bu etkinlik aynı zamanda &lt;span style="FONT-WEIGHT: bold"&gt;internetten, SilverLight teknolojisi kullanılarak canlı olarak yayınlanıyor olacak&lt;/span&gt;. Sınırlı sayıda katılımcının alınacağı bu etkinlik ile ilgili kayıt formu Salı gününden itibaren &lt;a href="http://www.msakademik.net/"&gt;&lt;span style="FONT-WEIGHT: bold"&gt;MS Akademik&lt;/span&gt;&lt;/a&gt; sitesinden açılacaktır. Semineri canlı olarak izlemek isteyenler &lt;span style="FONT-WEIGHT: bold"&gt;17 Ekim Çarşamba&lt;/span&gt; günü saat &lt;span style="FONT-WEIGHT: bold"&gt;13.30-17.30&lt;/span&gt; arası &lt;a style="FONT-WEIGHT: bold" href="http://ideas.ceit.metu.edu.tr/BotebOnline_vs2005/Pages/Webiner.aspx" target="_blank"&gt;bu linki&lt;/a&gt; kullanabilirler.&lt;br /&gt;&lt;br /&gt;Bu seminer ile ilgili olarak başta ODTÜ BÖTE Bölüm Başkanı &lt;span style="FONT-WEIGHT: bold"&gt;M.Yaşar ÖZDEN&lt;/span&gt;'e ve &lt;span style="FONT-WEIGHT: bold"&gt;&lt;/span&gt;ODTÜ'deki MSP arkadaşlarım &lt;span style="FONT-WEIGHT: bold"&gt;Murat Duman&lt;/span&gt;, &lt;span style="FONT-WEIGHT: bold"&gt;Mustafa Ayaş&lt;/span&gt; ve &lt;span style="FONT-WEIGHT: bold"&gt;Berk Gürakan&lt;/span&gt;'a teşekkürlerimi sunarım.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-2890870968205196897?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/2890870968205196897/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=2890870968205196897' title='1 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/2890870968205196897'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/2890870968205196897'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2007/10/aspnet-20-semineri-odt-ankara.html' title='ASP.NET 2.0 Semineri (ODTÜ-Ankara)'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_657dzC0AiLc/RwYepRTJEOI/AAAAAAAAACc/4QIY6Oz9mJA/s72-c/aspnet.gif' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-6246304835442178239</id><published>2007-10-15T21:21:00.000+03:00</published><updated>2007-10-19T08:42:21.385+03:00</updated><title type='text'>ASP.NET AJAX Semineri (Bilkent Üniversitesi-Ankara)</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_657dzC0AiLc/RxO3CxTJEQI/AAAAAAAAACs/iZz78tDnv0c/s1600-h/seminer.PNG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://2.bp.blogspot.com/_657dzC0AiLc/RxO3CxTJEQI/AAAAAAAAACs/iZz78tDnv0c/s200/seminer.PNG" alt="" id="BLOGGER_PHOTO_ID_5121638459471630594" border="0" width="71" height="100" /&gt;&lt;/a&gt;&lt;span style="font-weight: bold;"&gt;18 Ekim Perşembe&lt;/span&gt; günü &lt;span style="font-weight: bold;"&gt;Bilkent Üniversitesi&lt;/span&gt; öğrencileri ile &lt;span style="font-weight: bold;"&gt;ASP.NET AJAX&lt;/span&gt; semineri ile buluşuyor olacağım. Seminer ile ilgili detaylı bilgilerini soldaki afişten görebilir veya facebook üyesi iseniz &lt;a href="http://www.facebook.com/event.php?eid=5494663004" target="_blank"&gt;&lt;span style="font-weight: bold;"&gt;bu linke&lt;/span&gt;&lt;/a&gt; göz atabilirsiniz.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Not&lt;/span&gt;: Yoğunluk ve yer sıkıntısı olduğu için Bilkent Üniversitesi öğrencilerine açıktır. Dışardan seminere katılmak isteyen arkadaşlar  &lt;br /&gt;&lt;a href="mailto:ilker.acar@msakademik.net"&gt;&lt;span style="font-weight: bold;"&gt;ilker.acar@msakademik.net&lt;/span&gt;&lt;/a&gt; mail adresinden iletişime geçebilirler. Bilkent Üniversitesi'den MSP &lt;span style="font-weight: bold;"&gt;İlker Acar&lt;/span&gt;'a katkılarından dolayı teşekkür ederim.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-6246304835442178239?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/6246304835442178239/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=6246304835442178239' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/6246304835442178239'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/6246304835442178239'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2007/10/aspnet-ajax-seminer-bilkent-niversitesi.html' title='ASP.NET AJAX Semineri (Bilkent Üniversitesi-Ankara)'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_657dzC0AiLc/RxO3CxTJEQI/AAAAAAAAACs/iZz78tDnv0c/s72-c/seminer.PNG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-3072451179571475956</id><published>2007-10-11T14:37:00.001+03:00</published><updated>2007-11-06T11:01:09.339+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='kişisel'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net 2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='sunum'/><title type='text'>ASP.NET 2.0 Semineri Ardından</title><content type='html'>&lt;p&gt;Dün &lt;strong&gt;Microsoft İstanbul&lt;/strong&gt; Ofisinde &lt;strong&gt;ASP.NET 2.0&lt;/strong&gt; seminerini gerçekleştirdik. Dört saat boyunca birçok örnek uygulama eşliğinde geçen ve katılımcılardan oldukça olumlu geri bildirimler aldığım sunumun ardından günü değerli hocam &lt;a href="http://www.nuricankaya.com/" target="_blank"&gt;&lt;strong&gt;Nuri Çankaya&lt;/strong&gt;&lt;/a&gt; ve değerli arkadaşım &lt;a href="http://daron.yondem.com/tr" target="_blank"&gt;&lt;strong&gt;Daron Yöndem&lt;/strong&gt;&lt;/a&gt; ile geçirdiğim hoş sohbetle bitirdik.&lt;/p&gt;&lt;p&gt;Seminer için hazırladığım &lt;a href="http://www.nedirtv.com/Files/etkinlikler/10Ekim_ASPNET_MS/sunum.ppt" target="_blank"&gt;&lt;strong&gt;sunum dosyasını&lt;/strong&gt;&lt;/a&gt; ve örnek uygulamaları içeren &lt;a href="http://www.nedirtv.com/Files/etkinlikler/10Ekim_ASPNET_MS/Ornek.zip" target="_blank"&gt;&lt;strong&gt;dosyayı&lt;/strong&gt;&lt;/a&gt; linklerden indirebilirsiniz.&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.nedirtv.com/Files/etkinlikler/10Ekim_ASPNET_MS/sunum.ppt" target="_blank"&gt;&lt;strong&gt;ASP.NET 2.0 Sunumu&lt;/strong&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.nedirtv.com/Files/etkinlikler/10Ekim_ASPNET_MS/Ornek.zip" target="_blank"&gt;&lt;strong&gt;Örnekler&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-3072451179571475956?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/3072451179571475956/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=3072451179571475956' title='3 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/3072451179571475956'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/3072451179571475956'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2007/10/aspnet-20-semineri-ardndan.html' title='ASP.NET 2.0 Semineri Ardından'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-2218023049848537539</id><published>2007-10-09T12:01:00.000+03:00</published><updated>2007-11-06T11:01:38.448+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='webiner'/><category scheme='http://www.blogger.com/atom/ns#' term='expression studio'/><title type='text'>Microsoft Expression Webineri</title><content type='html'>&lt;img id="BLOGGER_PHOTO_ID_5119260383324475634" style="FLOAT: left; MARGIN: 0px 10px 10px 0px" alt="" src="http://1.bp.blogspot.com/_657dzC0AiLc/RwtEMhTJEPI/AAAAAAAAACk/3sJwsg2ETCk/s320/expression_studio_webiner.gif" border="0" /&gt;Türkiye’nin ilk Expression webineri &lt;strong&gt;11 Ekim 2007 Perşembe&lt;/strong&gt; günü gerçekleşiyor. Microsoft’tan &lt;strong&gt;Mehmet Nuri Çankaya&lt;/strong&gt;, nedirTV?com editörlerinden ve Deveload’dan &lt;strong&gt;Daron Yöndem&lt;/strong&gt;’in konuşmacı olduğu webiner 2007 yılının en önemli tasarım aracı gelişmelerinden olan &lt;strong&gt;Expression Media ve Expression Encoder&lt;/strong&gt; konularını içeriyor.&lt;br /&gt;&lt;br /&gt;Bu önemli webinere katılmak istiyorsanız detaylı bilgileri &lt;a href="http://daron.yondem.com/tr/" target="_blank"&gt;&lt;strong&gt;http://daron.yondem.com/tr/&lt;/strong&gt;&lt;/a&gt; adresinde bulabilirsiniz.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-2218023049848537539?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/2218023049848537539/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=2218023049848537539' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/2218023049848537539'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/2218023049848537539'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2007/10/trkiyenin-ilk-expression-webineri-11.html' title='Microsoft Expression Webineri'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_657dzC0AiLc/RwtEMhTJEPI/AAAAAAAAACk/3sJwsg2ETCk/s72-c/expression_studio_webiner.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-4208877370829424692</id><published>2007-10-05T14:13:00.000+03:00</published><updated>2007-11-06T11:01:54.148+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='asp.net 2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='seminer'/><title type='text'>10 Ekim Çarşamba - ASP.NET 2.0 Semineri</title><content type='html'>&lt;img id="BLOGGER_PHOTO_ID_5117811720920305890" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://3.bp.blogspot.com/_657dzC0AiLc/RwYepRTJEOI/AAAAAAAAACc/4QIY6Oz9mJA/s320/aspnet.gif" border="0" /&gt;Birkaç haftalık aradan sonra seminerlere devam...&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;10 Ekim Çarşamba&lt;/strong&gt; günü &lt;strong&gt;Microsoft İstanbul Ofisi&lt;/strong&gt;, Marmara Salonu'nda &lt;strong&gt;ASP.NET 2.0&lt;/strong&gt; semineri veriyor olacağım. İlgili arkadaşların katılımlarını bekliyorum. Detaylı bilgilere ve kayıt işlemlerine &lt;a href="http://www.msakademik.net/haberdetay.aspx?id=179" target="_blank"&gt;http://www.msakademik.net/haberdetay.aspx?id=179&lt;/a&gt; adresinden erişebilirsiniz.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-4208877370829424692?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/4208877370829424692/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=4208877370829424692' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/4208877370829424692'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/4208877370829424692'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2007/10/10-ekim-aramba-aspnet-20-semineri.html' title='10 Ekim Çarşamba - ASP.NET 2.0 Semineri'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_657dzC0AiLc/RwYepRTJEOI/AAAAAAAAACc/4QIY6Oz9mJA/s72-c/aspnet.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-5302411869009608953</id><published>2007-10-03T20:58:00.000+03:00</published><updated>2007-11-06T11:02:39.327+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='silverlight'/><category scheme='http://www.blogger.com/atom/ns#' term='webiner'/><title type='text'>Silverlight Webineri</title><content type='html'>&lt;a href="http://4.bp.blogspot.com/_657dzC0AiLc/RwPYsRTJEMI/AAAAAAAAACM/JKEeHtvWa04/s1600-h/silverlight_2.gif"&gt;&lt;img id="BLOGGER_PHOTO_ID_5117171856692547778" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://4.bp.blogspot.com/_657dzC0AiLc/RwPYsRTJEMI/AAAAAAAAACM/JKEeHtvWa04/s320/silverlight_2.gif" border="0" /&gt;&lt;/a&gt;Türkiye’nin ilk Silverlight webineri 4 Ekim 2007 Perşembe günü gerçekleşiyor. &lt;strong&gt;Microsoft&lt;/strong&gt;’tan &lt;strong&gt;Mehmet Nuri Çankaya&lt;/strong&gt; ve &lt;strong&gt;Deveload&lt;/strong&gt;’dan ve &lt;strong&gt;nedirTV?com&lt;/strong&gt; editörlerinden &lt;strong&gt;Daron Yöndem&lt;/strong&gt;’in konuşmacı olduğu webiner 2007 yılının en önemli teknolojik gelişimlerinden olan Silverlight konusunu enine boyuna içeriyor.&lt;br /&gt;&lt;br /&gt;Detaylı bilgilere &lt;a href="http://www.msakademik.net/haberdetay.aspx?id=178" target="_blank"&gt;http://www.msakademik.net/haberdetay.aspx?id=178&lt;/a&gt; adresinden ulaşabilirsiniz.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-5302411869009608953?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/5302411869009608953/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=5302411869009608953' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/5302411869009608953'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/5302411869009608953'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2007/10/trkiyenin-ilk-silverlight-webineri-4.html' title='Silverlight Webineri'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_657dzC0AiLc/RwPYsRTJEMI/AAAAAAAAACM/JKEeHtvWa04/s72-c/silverlight_2.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-1580126748087607119</id><published>2007-10-02T11:43:00.001+03:00</published><updated>2008-04-20T08:36:14.871+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='haberler'/><title type='text'>Imagine Cup 2008-Türkiye Başvuruları Başladı</title><content type='html'>&lt;a href="http://imaginecup.msakademik.net/" target="_blank"&gt;&lt;img id="BLOGGER_PHOTO_ID_5116658925928255666" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://1.bp.blogspot.com/_657dzC0AiLc/RwIGLxTJELI/AAAAAAAAACE/tiIHAp1biBc/s320/imagin_cup_big.png" border="0" /&gt;&lt;/a&gt; &lt;div&gt;Microsoft tarafından öğrencilere yönelik olarak düzenlenen Imagine Cup yarışmasının bu yılki dünya finali Temmuz 2008’de Fransa’nın başkenti Paris'te gerçekleştirilecek. Yarışmanın Yazılım Tasarımı kategorisinde Türkiye'yi temsil edecek proje, Mayıs 2008’de düzenlenecek final sonrasında Microsoft Türkiye ve bilişim sektörünün yazılım alanında çalışan uzman kişilerinden oluşan jüri kurulu tarafından belirlenecek.&lt;br /&gt;&lt;br /&gt;Bu yıl ki yarışma teması &lt;strong&gt;"Sürdürülebilir çevre için, teknolojinin kullanıldığı bir dünya düşleyin"&lt;/strong&gt; olarak belirlenmiş. Yarışmaya katılmayı düşünen üniversite öğrencileri &lt;a href="http://imaginecup.msakademik.net/" target="_blank"&gt;&lt;b&gt;http://imaginecup.msakademik.net&lt;/b&gt;&lt;/a&gt; adresinden detaylı bilgilere erişebilirler.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-1580126748087607119?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/1580126748087607119/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=1580126748087607119' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/1580126748087607119'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/1580126748087607119'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2007/10/imagine-cup-2008-trkiye-bavurular-balad.html' title='Imagine Cup 2008-Türkiye Başvuruları Başladı'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_657dzC0AiLc/RwIGLxTJELI/AAAAAAAAACE/tiIHAp1biBc/s72-c/imagin_cup_big.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-1353273966121593618</id><published>2007-09-26T10:49:00.001+03:00</published><updated>2008-04-20T08:38:13.936+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='asp.net'/><title type='text'>Web Sayfalarını Temel Bir Class'tan Kalıtmak</title><content type='html'>Nesne yönelimli programlamanın (OOP) en temel yapı taşlarından biride kalıtımdır(inheritance). .NET mimarisinde her yerde olduğu gibi ASP.NET web uygulamalarında da gerek sayfa tiplerinde gerekse kontrollerde kalıtımın getirilerini ve etkilerini önemli derecede görüyoruz. Fakat eğitimlerimde ve kendi çevremde gördüğüm kadarıyla kalıtımın web sayfalarında en güzel uygulanabileceği noktalardan birisini kaçırıyoruz.&lt;br /&gt;&lt;br /&gt;Şöyle bir senaryo üzerinden anlatmaya çalışacak olursam; bir projede kullandığımız birçok sayfanın ortak işlevleri olsun. Mesela bu sayfaların tamamında online kullanıcı sayısını görüntülemek isteyebiliriz. Yine sayfanın title bilgisini veritabanından dinamik olarak çekip görüntülemek isteyebiliriz. Normal şartlarda aklımıza gelen ilk yol tüm sayfaların code-behind kısmında bu işlemleri metot-property olarak tek tek yazmak olabilir. Yine bu işleri yapan bir class yazarak her sayfada class'ın nesne örneğini elde ederek bu işlemi instance üzerinden yürütmekte akla gelen bir diğer yol olabilir. Fakat benim bahsetmek istediğim yol bu iki yoldan da daha kolay ve pratik olacaktır.&lt;br /&gt;&lt;br /&gt;Bildiğimiz gibi aspx uzantılı sayfalarımız &lt;strong&gt;System.Web.UI.Page&lt;/strong&gt; sınıfından kalıtılarak elde edilir. Eğer kendimiz için bir sayfa prototipi çıkarır ve bunu System.Web.UI.Page sınıfından kalıtılan &lt;strong&gt;BasePage&lt;/strong&gt; isminde bir class olarak oluşturursak, artık Default.aspx gibi bir sayfanın class'ını System.Web.UI.Page yerine BasePage gibi bir class'tan kalıtacak olursak istediğimiz işlemi gerçekleştirmiş olacağız. Anlaşılmadı mı? O zaman örnek kodlara bakalım.&lt;br /&gt;&lt;br /&gt;BasePage.cs&lt;br /&gt;&lt;div style="BORDER-RIGHT: #aaaaaa 1px solid; BORDER-TOP: #aaaaaa 1px solid; BORDER-LEFT: #aaaaaa 1px solid; WIDTH: 480px; BORDER-BOTTOM: #aaaaaa 1px solid"&gt;public class BasePage: &lt;strong&gt;System.Web.UI.Page&lt;/strong&gt;&lt;br /&gt;{&lt;br /&gt;   public int OnlineKullaniciSayisi&lt;br /&gt;   {&lt;br /&gt;      get {&lt;br /&gt;         // Online kullanıcı sayısını bul ve return ile döndür&lt;br /&gt;         }&lt;br /&gt;      }&lt;br /&gt;   public BasePage()&lt;br /&gt;   {&lt;br /&gt;      // Tüm sayfalar ilk çalıştırıldığında yapılması istenilen değişiklikler&lt;br /&gt;      // constructor'da yapılabilir. Örneğin; sayfanın adını çözümle,&lt;br /&gt;      // veritabanına git ve sayfanın ziyaret edilme sayısını 1 arttır...&lt;br /&gt;      this.Title = "Dinamik oluşan başlık bilgisi...";&lt;br /&gt;   }&lt;br /&gt;} &lt;/div&gt;&lt;br /&gt;Default.aspx&lt;br /&gt;&lt;div style="BORDER-RIGHT: #aaaaaa 1px solid; BORDER-TOP: #aaaaaa 1px solid; BORDER-LEFT: #aaaaaa 1px solid; WIDTH: 480px; BORDER-BOTTOM: #aaaaaa 1px solid"&gt;public partial class Default : &lt;b&gt;&lt;u&gt;BasePage&lt;/u&gt;&lt;/b&gt;&lt;br /&gt;{&lt;br /&gt;   protected void Page_Load(object sender, EventArgs e)&lt;br /&gt;   {&lt;br /&gt;      Response.Write("Sitedeki online kullanıcı: " +&lt;br /&gt;                  this.OnlineKullaniciSayisi.ToString());&lt;br /&gt;   }&lt;br /&gt;}&lt;/div&gt;&lt;br /&gt;Böylece artık tüm sayfaları BasePage isimli class'tan kalıtarak sayfalar ile ilgili temel ve ortak işlemleri daha kolay yönetebilir hale getirebilirsiniz.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-1353273966121593618?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/1353273966121593618/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=1353273966121593618' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/1353273966121593618'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/1353273966121593618'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2007/09/web-sayfalarn-temel-bir-classtan.html' title='Web Sayfalarını Temel Bir Class&apos;tan Kalıtmak'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-1369293232047253195</id><published>2007-09-24T12:14:00.000+03:00</published><updated>2007-09-24T12:42:30.326+03:00</updated><title type='text'>ASP.NET 2.0 Tema(Theme) Kullanımında Bir Sorun ve Çözümü</title><content type='html'>Az önce &lt;a href="http://www.west-wind.com/WebLog/" target="_blank"&gt;Rick Strahl&lt;/a&gt;'ın blogunda okuduğum bir bilgiyi sizlerle paylaşmak istedim. Bildiğiniz gibi bir ASP.NET sayfasında tema(theme) kullandığınızda ilgili &lt;strong&gt;App_Themes&lt;/strong&gt; alt klasörünün içerisindeki &lt;strong&gt;css&lt;/strong&gt; ve &lt;strong&gt;skin&lt;/strong&gt; dosyalarındaki stiller sayfanıza uygulanır. Fakat bu stilleri sayfa içerisine ekstra css kodları ekleyerek değiştirmeye çalıştığınızda, eklenen css kodları maalesef temadan gelen css kodlarını override edemediği için, yeni stilleri sayfaya uygulamada sıkıntı yaşarsınız. Eğer böyle bir sıkıntı ile karşılaşırsanız; eklenecek css kodunu sayfanın form etiketi içerisine yerleştirmek bu sorunu aşmanıza yardımcı olabilecektir.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.west-wind.com/WebLog/" target="_blank"&gt;Rick Strahl&lt;/a&gt;'ın bu konuyla ilgili &lt;a href="http://www.west-wind.com/weblog/posts/158367.aspx" target="_blank"&gt;ASP.NET and Styles &amp;amp; CSS Embedding&lt;/a&gt; yazısını okumak için &lt;a href="http://www.west-wind.com/weblog/posts/158367.aspx" target="_blank"&gt;buraya tıklayabilirsiniz.&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-1369293232047253195?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/1369293232047253195/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=1369293232047253195' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/1369293232047253195'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/1369293232047253195'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2007/09/aspnet-20-tematheme-kullanmnda-bir.html' title='ASP.NET 2.0 Tema(Theme) Kullanımında Bir Sorun ve Çözümü'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-1573334201517405167</id><published>2007-09-22T18:02:00.000+03:00</published><updated>2007-11-06T11:04:32.639+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ajax'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net ajax'/><title type='text'>Ajax View JavaScript Instrumentation Proxy</title><content type='html'>&lt;b&gt;Microsoft&lt;/b&gt;'un web geliştiriciler için sunduğu bu araç ile hazırladığınız web uygulamalarında kullanılan JavaScript kodlarının işleyişini ve performansını test edebilirsiniz. Özellikle AJAX geliştiricilerin ilgisini çekeceğini düşündüğüm kullanışlı bir araç. Uygulama sadece performans ile ilgili istatistikleri değil, aynı zamanda uygulamada karşılaşılan fakat tarayıcı tarafından önemsenmeyen JavaScript hatalarını da listeliyor.&lt;br /&gt;&lt;br /&gt;Kullanımı ilk bakışta biraz karışık gibi görünsede, &lt;a href="http://research.microsoft.com/research/downloads/details/e82e1a27-e500-4e91-85fd-75886242acfc/details.aspx" target="_blank"&gt;&lt;strong&gt;bu linkteki&lt;/strong&gt;&lt;/a&gt; 515 kb.lık bir dosyayı bilgisayarınıza yükleyip, &lt;a href="http://research.microsoft.com/projects/ajaxview/ajaxviewusage-1.htm" target="_blank"&gt;&lt;strong&gt;bu linkteki&lt;/strong&gt;&lt;/a&gt; dökümanı da adım adım takip edecek olursanız izleme işlemlerinin sonuçlarına kolay bir şekilde erişebilirsiniz. Unutmadan; programla işiniz bittiğinde Internet Explorer'ın proxy ayarlarını düzeltmeyi unutmayın.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-1573334201517405167?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/1573334201517405167/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=1573334201517405167' title='2 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/1573334201517405167'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/1573334201517405167'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2007/09/ajax-view-javascript-instrumentation.html' title='Ajax View JavaScript Instrumentation Proxy'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-7737035896766341703</id><published>2007-09-12T20:37:00.000+03:00</published><updated>2007-11-06T11:04:59.808+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='seminer'/><title type='text'>.NET ile Programlamaya Giriş Seminerine Davetlisiniz</title><content type='html'>&lt;img id="BLOGGER_PHOTO_ID_5109374796921947138" style="FLOAT: left; MARGIN: 0px 10px 10px 0px" alt="" src="http://2.bp.blogspot.com/_657dzC0AiLc/RuglTqLdxAI/AAAAAAAAAB8/hJLLW7w1p9w/s320/dotnet__logo.gif" border="0" /&gt;&lt;strong&gt;15 Eylül Cumartesi&lt;/strong&gt; günü &lt;strong&gt;İstanbul-Bakırköy&lt;/strong&gt;'de &lt;strong&gt;.NET ile Programlamaya Giriş&lt;/strong&gt; semineri veriyor olacağım. Temel olarak .NET ortamını tanımak ve bu ortamda hızlı uygulama geliştirmek (Rapid Application Development) üzerine konuşma yapacağım bu seminere özellikle programcılığa yeni başlayan veya başlamayı düşünen arkadaşların katılımlarını bekliyorum.&lt;br /&gt;&lt;br /&gt;Ayrıntılı bilgi ve kayıt işlemi için &lt;strong&gt;&lt;a href="http://www.nedirtv.com/HaberDetay.aspx?HaberID=10" target="_blank"&gt;buraya tıklayabilirsiniz.&lt;/a&gt;&lt;/strong&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-7737035896766341703?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/7737035896766341703/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=7737035896766341703' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/7737035896766341703'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/7737035896766341703'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2007/09/net-ile-programlamaya-giri-seminerine.html' title='.NET ile Programlamaya Giriş Seminerine Davetlisiniz'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_657dzC0AiLc/RuglTqLdxAI/AAAAAAAAAB8/hJLLW7w1p9w/s72-c/dotnet__logo.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-9039762780329113398</id><published>2007-09-09T22:12:00.000+03:00</published><updated>2007-11-06T11:05:17.395+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='kişisel'/><title type='text'>PC MAGAZINE'de Yazmaya Başlıyorum</title><content type='html'>&lt;img id="BLOGGER_PHOTO_ID_5108281064405800194" style="FLOAT: left; MARGIN: 0px 10px 10px 0px" alt="" src="http://2.bp.blogspot.com/_657dzC0AiLc/RuRCkDDDFQI/AAAAAAAAAB0/H8zroR3itzM/s320/logo_pcmagazine.gif" border="0" /&gt;&lt;strong&gt;Ekim&lt;/strong&gt; ayı itibariyle &lt;strong&gt;&lt;a href="http://www.pcmag.com.tr/" target="_blank"&gt;PC MAGAZINE&lt;/a&gt;&lt;/strong&gt; dergisinde yazmaya başlıyorum. Bundan sonra bir aksilik çıkmazsa &lt;strong&gt;ASP.NET&lt;/strong&gt; konusundaki bilgilerimi sizlere PC MAGAZINE dergisi aracılığıyla da ulaştırıyor olacağım. İlk yazımın başlığı &lt;strong&gt;ASP.NET AJAX ile Web Sayfaları Geliştirmek&lt;/strong&gt; olacak.&lt;br /&gt;&lt;br /&gt;Bu olayda her türlü yardımlarından ve desteğinden dolayı değerli &lt;strong&gt;&lt;a href="http://www.alibabaoglan.com/" target="_blank"&gt;Ali Rıza BABAOĞLAN&lt;/a&gt;&lt;/strong&gt;'a teşekkürlerimi blogumdan da sunmak isterim.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-9039762780329113398?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/9039762780329113398/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=9039762780329113398' title='1 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/9039762780329113398'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/9039762780329113398'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2007/09/pc-magazinede-yazmaya-balyorum.html' title='PC MAGAZINE&apos;de Yazmaya Başlıyorum'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_657dzC0AiLc/RuRCkDDDFQI/AAAAAAAAAB0/H8zroR3itzM/s72-c/logo_pcmagazine.gif' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-3355527577649215251</id><published>2007-09-05T23:44:00.000+03:00</published><updated>2007-11-06T11:05:38.777+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='kişisel'/><category scheme='http://www.blogger.com/atom/ns#' term='haberler'/><title type='text'>INETA Türkiye Toplantısı</title><content type='html'>&lt;a href="http://2.bp.blogspot.com/_657dzC0AiLc/Rt8YMTDDFPI/AAAAAAAAABs/H8gjABJVlYs/s1600-h/ineta_logo.gif"&gt;&lt;img id="BLOGGER_PHOTO_ID_5106827102011987186" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://2.bp.blogspot.com/_657dzC0AiLc/Rt8YMTDDFPI/AAAAAAAAABs/H8gjABJVlYs/s320/ineta_logo.gif" border="0" /&gt;&lt;/a&gt; &lt;div&gt;Bugün &lt;strong&gt;INETA (International .NET Association) Türkiye&lt;/strong&gt; Toplantısını Microsoft İstanbul'da gerçekleştirdik. nedirTV?com Topluluk Lideri olarak benimde bulunduğum bu toplantıyı INETA MEA Bölge Başkanı &lt;strong&gt;Aykut Taşdelen&lt;/strong&gt; ve INETA Türkiye Başkanı &lt;strong&gt;Bülent Sözge&lt;/strong&gt;'nin katılımlarıyla gerçekleştirdik. Toplantıda INETA'ya üye olan topluluklar olarak önümüzdeki dönemlerde yapabileceğimiz organizasyonlarla ilgili olarak uzunca konuştuk ve tartıştık. Önümüzdeki günlerde eminim ki bizleri oldukça güzel organizasyonlar bekliyor olacak.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-3355527577649215251?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/3355527577649215251/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=3355527577649215251' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/3355527577649215251'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/3355527577649215251'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2007/09/ineta-trkiye-toplants.html' title='INETA Türkiye Toplantısı'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_657dzC0AiLc/Rt8YMTDDFPI/AAAAAAAAABs/H8gjABJVlYs/s72-c/ineta_logo.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-780760612573709739</id><published>2007-09-04T08:42:00.000+03:00</published><updated>2007-11-06T11:06:10.316+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='caching'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net 2.0'/><title type='text'>Substitution ile Önbellekleme İşlemleri</title><content type='html'>ASP.NET 2.0 ile birlikte gelen yeni kontrollerden biri olan &lt;strong&gt;Substitution&lt;/strong&gt; 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.&lt;br /&gt;&lt;br /&gt;&lt;embed pluginspage="http://macromedia.com/go/getflashplayer" src="http://images.soapbox.msn.com/flash/soapbox1_1.swf" width="432" height="364" type="application/x-shockwave-flash" quality="high" wmode="transparent" flashvars="c=v&amp;amp;v=50e31bdf-e19e-4c7d-ba32-aab25a7676de"&gt;&lt;/embed&gt;&lt;br /&gt;&lt;a title="Substitution ile Önbellekleme" href="http://soapbox.msn.com/video.aspx?vid=50e31bdf-e19e-4c7d-ba32-aab25a7676de" target="_new"&gt;ASP.NET 2.0'da Substitution ile Önbellekleme İşlemleri&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-780760612573709739?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/780760612573709739/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=780760612573709739' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/780760612573709739'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/780760612573709739'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2007/09/substitution-ile-nbellekleme-ilemleri.html' title='Substitution ile Önbellekleme İşlemleri'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17025490.post-1460400960849389101</id><published>2007-09-04T08:37:00.000+03:00</published><updated>2007-11-06T11:06:39.931+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='silverlight'/><category scheme='http://www.blogger.com/atom/ns#' term='haberler'/><title type='text'>Türkiye'deki ilk SilverLight Uygulaması: SilverLightTV</title><content type='html'>Değerli arkadaşım &lt;strong&gt;&lt;a href="http://www.tayfunakcay.com/" target="_blank"&gt;Tayfun AKÇAY&lt;/a&gt;&lt;/strong&gt;'ın sitesinde gördüğüm ve ilgiyle okuduğum haberi sizlerle paylaşmak istedim. Ankara'dan uzun süredir uzak kaldığım için bu tip gelişmelerden ancak 3. şahıs olarak haberdar olabiliyorum. Değerli hocam ODTÜ BÖTE Bölüm Başkanı &lt;strong&gt;&lt;a href="http://guide.ceit.metu.edu.tr/" target="_blank"&gt;Prof.Dr. M.Yaşar ÖZDEN&lt;/a&gt;&lt;/strong&gt;'in emekleri ile hazırlanan ve Türkiye'deki ilk SilverLight örneği olma özelliğini taşıyan bu projeye &lt;strong&gt;&lt;a href="http://guide.ceit.metu.edu.tr/Expression/SilverLightTV/default.html" target="_blank"&gt;buradaki linkten&lt;/a&gt;&lt;/strong&gt; ulaşabilirsiniz. İlgili sayfada SilverLight plugin'i aracılığıyla 24 saat kesintisiz olarak NTV kanalını canlı yayında izleyebilirsiniz.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17025490-1460400960849389101?l=umutluoglu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://umutluoglu.blogspot.com/feeds/1460400960849389101/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17025490&amp;postID=1460400960849389101' title='3 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/1460400960849389101'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17025490/posts/default/1460400960849389101'/><link rel='alternate' type='text/html' href='http://umutluoglu.blogspot.com/2007/09/trkiyedeki-ilk-silverlight-rnei.html' title='Türkiye&apos;deki ilk SilverLight Uygulaması: SilverLightTV'/><author><name>Uğur UMUTLUOĞLU</name><uri>http://www.blogger.com/profile/03201397011160738094</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry></feed>
