<?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-6618040296640841118</id><updated>2012-02-17T01:06:14.849+02:00</updated><category term='iphone'/><category term='iis'/><category term='sql server'/><category term='vista'/><category term='problem'/><title type='text'>ky.blog</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://kadiry.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6618040296640841118/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://kadiry.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>kadir</name><uri>http://www.blogger.com/profile/04188308032781301484</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>16</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-6618040296640841118.post-1533488952370042052</id><published>2012-01-04T12:22:00.003+02:00</published><updated>2012-01-04T12:26:45.650+02:00</updated><title type='text'>Objective-C Singleton</title><content type='html'>Bunu da bir kenara not etmek lazim.&lt;br /&gt;&lt;br /&gt;MySingleton.h:&lt;br /&gt;&lt;code&gt;&lt;br /&gt;@interface MySingleton : NSObject {&lt;br /&gt;}&lt;br /&gt;+(MySingleton*)sharedMySingleton;&lt;br /&gt;@end&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;MySingleton.m:&lt;br /&gt;&lt;code&gt;&lt;br /&gt;@implementation MySingleton&lt;br /&gt;static MySingleton* _sharedMySingleton = nil;&lt;br /&gt;&lt;br /&gt;+(MySingleton*)sharedMySingleton&lt;br /&gt;{&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;@synchronized([MySingleton class])&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;{&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;if (!_sharedMySingleton) [[self alloc] init];&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;return _sharedMySingleton;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;}&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;return nil;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;+(id)alloc&lt;br /&gt;{&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;@synchronized([MySingleton class])&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;{&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;NSAssert(_sharedMySingleton == nil, @"Attempted to allocate a second instance of a singleton.");&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;_sharedMySingleton = [super alloc];&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;return _sharedMySingleton;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;}&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;return nil;&lt;br /&gt;}&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;Kaynak:&lt;br /&gt;http://getsetgames.com/2009/08/30/the-objective-c-singleton/&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6618040296640841118-1533488952370042052?l=kadiry.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kadiry.blogspot.com/feeds/1533488952370042052/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6618040296640841118&amp;postID=1533488952370042052' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6618040296640841118/posts/default/1533488952370042052'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6618040296640841118/posts/default/1533488952370042052'/><link rel='alternate' type='text/html' href='http://kadiry.blogspot.com/2012/01/objective-c-singleton.html' title='Objective-C Singleton'/><author><name>kadir</name><uri>http://www.blogger.com/profile/04188308032781301484</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-6618040296640841118.post-3914539591500305951</id><published>2011-05-24T12:07:00.006+03:00</published><updated>2011-05-24T12:15:04.586+03:00</updated><title type='text'>UIActionSheet, adini unutuyorum senin hep</title><content type='html'>&lt;a href="http://developer.apple.com/library/ios/documentation/userexperience/conceptual/mobilehig/Art/action_sheets.jpg" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img src="http://developer.apple.com/library/ios/documentation/userexperience/conceptual/mobilehig/Art/action_sheets.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;oyle cok fazla iPhone uygulamasi yazmiyorum, arada bir lazim oluyor, cok kullanilmayinca da isimler unutuluyor. hele bir tanesi var ki, her ihtiyac duydugumda adini hatirlamak icin 40 saat dusunuyorum; kendisi UIActionSheet.&lt;div&gt;&lt;br /&gt;&lt;div&gt;bir daha lazim oldugunda hatirlayabilmek icin not ediyorum buraya.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6618040296640841118-3914539591500305951?l=kadiry.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kadiry.blogspot.com/feeds/3914539591500305951/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6618040296640841118&amp;postID=3914539591500305951' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6618040296640841118/posts/default/3914539591500305951'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6618040296640841118/posts/default/3914539591500305951'/><link rel='alternate' type='text/html' href='http://kadiry.blogspot.com/2011/05/uiactionsheet-adini-unutuyorum-senin.html' title='UIActionSheet, adini unutuyorum senin hep'/><author><name>kadir</name><uri>http://www.blogger.com/profile/04188308032781301484</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-6618040296640841118.post-8171476097322448904</id><published>2011-05-18T17:57:00.002+03:00</published><updated>2011-05-18T18:01:01.894+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iphone'/><title type='text'>iphone faydali kutuphaneler</title><content type='html'>iPhone uygulamalari gelistirirken ayni isi goren bircok alternatifle karsilasiyorum. Bu alternatiflerden yaptigim secimleri bir kenara not etmekte fayda var.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;XML parse icin: TBXML&lt;/div&gt;&lt;div&gt;HTTP yardimci metodlari icin: ASIHTTPRequest&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Ihtiyac oldukca bu listeyi guncelleyecegim. Simdilik bu kadar.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6618040296640841118-8171476097322448904?l=kadiry.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kadiry.blogspot.com/feeds/8171476097322448904/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6618040296640841118&amp;postID=8171476097322448904' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6618040296640841118/posts/default/8171476097322448904'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6618040296640841118/posts/default/8171476097322448904'/><link rel='alternate' type='text/html' href='http://kadiry.blogspot.com/2011/05/iphone-faydali-kutuphaneler.html' title='iphone faydali kutuphaneler'/><author><name>kadir</name><uri>http://www.blogger.com/profile/04188308032781301484</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-6618040296640841118.post-1982551790013693165</id><published>2009-10-23T16:35:00.003+03:00</published><updated>2009-10-23T18:00:43.735+03:00</updated><title type='text'>crossdomain javascript iletisimi</title><content type='html'>&lt;h2&gt;Problem:&lt;/h2&gt;A domainindeki bir sayfamız B domainden gelen sayfayı bir iframe içinde görüntülüyor. B domainindeki sayfanın, yüksekliğini algılayıp, iframe yüksekliğini otomatik ayarlamasını istiyoruz. Ancak, A sayfası, B sayfasının yüksekliğine erişmeye çalıştığında 'permission denied' hatası alıyoruz.&lt;br /&gt;&lt;h2&gt;Kendi geliştirdiğim çözüm şu şekilde: &lt;/h2&gt;Sayfalarımız şunlar:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;A: http://domain-A/container.htm&lt;/li&gt;&lt;li&gt;B: http://domain-B/iframe-content.htm&lt;/li&gt;&lt;li&gt;C: http://domain-A/communicator.htm&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;A sayfasının içinde B var, B'nin içinde de C olacak. A ve C aynı domainden geldikleri için birbirleri ile haberleşebilirler. B sayfası dinamik olarak C'yi içeren bir iframe yazdıracak. C'ye iletmek istediğimiz parametreyi #hash kullanarak aktaracağız. Parametrelerimizi hash üzerinden aktardığımız için communicator.htm dosyasının cache'den kullanabiliriz. (Querystring kullanmış olsaydık her farklı parametre için sunucuya istek gönderilecekti.)&lt;/p&gt;&lt;span style="font-style: italic;"&gt;http://domain-A/communicator.htm&lt;/span&gt;&lt;br /&gt;&lt;code&gt;[script]&lt;br /&gt;top.document.getElementById('iframe1').style.height = Number(h)+'px';&lt;br /&gt;[/script]&lt;/code&gt;&lt;br /&gt;&lt;hr /&gt;&lt;span style="font-style: italic;"&gt;http://domain-A/container.htm&lt;/span&gt;&lt;br /&gt;&lt;code&gt;[iframe src="http://domain-B/iframe-content.htm"][/iframe]&lt;/code&gt;&lt;br /&gt;&lt;hr /&gt;&lt;span style="font-style: italic;"&gt;http://domain-B/iframe-content.htm&lt;/span&gt;&lt;br /&gt;&lt;code&gt;[script type="text/javascript"]&lt;br /&gt;function setTopFrameHeight(a)&lt;br /&gt;{&lt;br /&gt;$('#proxyFrame').html('[iframe style="WIDTH: 0px; DISPLAY: none; HEIGHT: 0px" src="http://domain-A/communicator.htm#'+a+'"][/iframe]');&lt;br /&gt;}&lt;br /&gt;[/script]&lt;br /&gt;...&lt;br /&gt;[button onclick="setTopFrameHeight('400px')"]deneme[/button]&lt;br /&gt;...&lt;br /&gt;[div id="proxyFrame"][/div]&lt;/code&gt;&lt;br /&gt;&lt;p&gt;Artık B domainindeki iframe-content.htm sayfasının, A domaininde bulunan kendisini içeren sayfadaki iframe'in yüksekliğini değiştirmek için setTopFrameHeight() fonksiyonunu çağırması yeterli.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Not:&lt;/strong&gt; Örnek kodlardaki html tag'leri [] şeklinde ifade edilmiştir.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6618040296640841118-1982551790013693165?l=kadiry.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kadiry.blogspot.com/feeds/1982551790013693165/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6618040296640841118&amp;postID=1982551790013693165' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6618040296640841118/posts/default/1982551790013693165'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6618040296640841118/posts/default/1982551790013693165'/><link rel='alternate' type='text/html' href='http://kadiry.blogspot.com/2009/10/crossdomain-javascript-iletisimi.html' title='crossdomain javascript iletisimi'/><author><name>kadir</name><uri>http://www.blogger.com/profile/04188308032781301484</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-6618040296640841118.post-1673100311264012676</id><published>2009-05-15T11:59:00.004+03:00</published><updated>2009-10-23T18:01:51.402+03:00</updated><title type='text'>xslt axis</title><content type='html'>Zaman zaman lazım oluyor, bir kenarda kayıtlı olmasında fayda var. XSLT'de bir node'dan diğer nodlara erişmeyi sağlayan anahtar kelimeler şunlar:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;child&lt;/li&gt;&lt;li&gt;descendant &lt;/li&gt;&lt;li&gt;parent &lt;/li&gt;&lt;li&gt;ancestor &lt;/li&gt;&lt;li&gt;following-sibling &lt;/li&gt;&lt;li&gt;preceding-sibling &lt;/li&gt;&lt;li&gt;self &lt;/li&gt;&lt;li&gt;following &lt;/li&gt;&lt;li&gt;preceding &lt;/li&gt;&lt;li&gt;attribute &lt;/li&gt;&lt;li&gt;namespace &lt;/li&gt;&lt;li&gt;descendant-or-self &lt;/li&gt;&lt;li&gt;ancestor-or-self&lt;/li&gt;&lt;/ul&gt;Bu anahtar kelimelerin herbiri geçerli node'a göre bir yön belirtmeyi sağlar. örneğin $currentNode/parent::node() mevcut node'un parent node'unu verecektir.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6618040296640841118-1673100311264012676?l=kadiry.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kadiry.blogspot.com/feeds/1673100311264012676/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6618040296640841118&amp;postID=1673100311264012676' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6618040296640841118/posts/default/1673100311264012676'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6618040296640841118/posts/default/1673100311264012676'/><link rel='alternate' type='text/html' href='http://kadiry.blogspot.com/2009/05/xslt-axis.html' title='xslt axis'/><author><name>kadir</name><uri>http://www.blogger.com/profile/04188308032781301484</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-6618040296640841118.post-3867199180239332977</id><published>2008-12-17T10:15:00.002+02:00</published><updated>2008-12-17T10:22:33.508+02:00</updated><title type='text'>python round fonksiyonu</title><content type='html'>python ile çalışırken round fonksiyonu beni bir miktar uğraştırmıştı. bir uygulamam için ortalama puan hesaplamam gerekiyordu. bunun için örneğin round(99/20) gibi bir değerin girdiği fonksiyon 5 yerine, 4 döndürüyordu. yani round fonksiyonu, math.floor gibi davranıyordu.&lt;br /&gt;biraz deneme yanılmadan sonra sorunu fonksiyonu şu şekilde yazarak çözdüm:&lt;br /&gt;round(99/20.0)&lt;br /&gt;buradan çıkan sonuç, 2 integer'la bir bölme işlemi yapıyorsanız sonuç math.floor edilmiş bir integer çıkıyor, dolayısıyla round fonksiyonuna zaten bir integer giriyor. sorunu düzeltmek için bölme işlemindeki elemanlardan birini double olarak tanımlamak gerekiyor.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6618040296640841118-3867199180239332977?l=kadiry.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kadiry.blogspot.com/feeds/3867199180239332977/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6618040296640841118&amp;postID=3867199180239332977' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6618040296640841118/posts/default/3867199180239332977'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6618040296640841118/posts/default/3867199180239332977'/><link rel='alternate' type='text/html' href='http://kadiry.blogspot.com/2008/12/python-round-fonksiyonu.html' title='python round fonksiyonu'/><author><name>kadir</name><uri>http://www.blogger.com/profile/04188308032781301484</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-6618040296640841118.post-4353752616699980445</id><published>2008-12-15T17:11:00.001+02:00</published><updated>2008-12-15T17:12:52.941+02:00</updated><title type='text'>veritabanındaki tüm constraint'leri görüntülemek</title><content type='html'>bir veritabanındaki primary key, foreign key gibi constaint'leri görüntülemek için aşağıdaki sql sorgusu kullanılabilir.&lt;br /&gt;&lt;code&gt;&lt;br /&gt;SELECT OBJECT_NAME(OBJECT_ID) AS NameofConstraint,&lt;br /&gt;SCHEMA_NAME(schema_id) AS SchemaName,&lt;br /&gt;OBJECT_NAME(parent_object_id) AS TableName,&lt;br /&gt;type_desc AS ConstraintType&lt;br /&gt;FROM sys.objects&lt;br /&gt;WHERE type_desc LIKE '%CONSTRAINT'&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;kaynak: &lt;a href="http://blog.sqlauthority.com/2007/09/16/sql-server-2005-list-all-the-constraint-of-database-find-primary-key-and-foreign-key-constraint-in-database/"&gt;http://blog.sqlauthority.com/2007/09/16/sql-server-2005-list-all-the-constraint-of-database-find-primary-key-and-foreign-key-constraint-in-database/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6618040296640841118-4353752616699980445?l=kadiry.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kadiry.blogspot.com/feeds/4353752616699980445/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6618040296640841118&amp;postID=4353752616699980445' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6618040296640841118/posts/default/4353752616699980445'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6618040296640841118/posts/default/4353752616699980445'/><link rel='alternate' type='text/html' href='http://kadiry.blogspot.com/2008/12/veritabanndaki-tm-constraintleri.html' title='veritabanındaki tüm constraint&apos;leri görüntülemek'/><author><name>kadir</name><uri>http://www.blogger.com/profile/04188308032781301484</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-6618040296640841118.post-4178055217344358310</id><published>2008-12-15T17:02:00.006+02:00</published><updated>2009-10-23T18:03:33.542+03:00</updated><title type='text'>SqlDataSource Exception Handling</title><content type='html'>Dataview, gridview, formview gibi kontrollerin try-catch yazılacak bir yeri olmadığından oluşacak hataların nasıl handle edileceği gibi bir soruyla karşılaşanlar için çözüm şu şekilde:&lt;br /&gt;&lt;br /&gt;Diyelim insert işleminde duplicate primary key yüzünden hata alıyorsunuz. Insert işleminde oluşması beklenen bu hatayı handle etmek için sqldatasource (bu objectdatasource da olabilir) nesnesinin Inserted event'ine bir handler ekliyoruz:&lt;br /&gt;&lt;code&gt;&lt;br /&gt;SqlDataSource1.Inserted += new SqlDataSourceStatusEventHandler(SqlDataSource1_Inserted);&lt;br /&gt;}&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;Handler fonksiyomunuzu şu şekilde yazıyoruz:&lt;br /&gt;&lt;code&gt;&lt;br /&gt;void SqlDataSource1_Inserted(object sender, SqlDataSourceStatusEventArgs e)&lt;br /&gt;{&lt;br /&gt;  if (e.Exception != null)&lt;br /&gt;  {&lt;br /&gt;    e.ExceptionHandled = true;&lt;br /&gt;    Response.Write(e.Exception.Message);&lt;br /&gt;  }&lt;br /&gt;}&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;Buradaki e.ExceptionHandled = true; kısmını yazmak önemli. Bu kısım yazılmazsa exception handle edildiği halde uygulama hatası olarak ekrana yansıyacaktır.&lt;br /&gt;&lt;br /&gt;Silme işleminde oluşacak muhtemel hataları handle etmek için ise benzer bir fonksiyon sqldatasource nesnesinin Deleted event'ine eklenmeli.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6618040296640841118-4178055217344358310?l=kadiry.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kadiry.blogspot.com/feeds/4178055217344358310/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6618040296640841118&amp;postID=4178055217344358310' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6618040296640841118/posts/default/4178055217344358310'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6618040296640841118/posts/default/4178055217344358310'/><link rel='alternate' type='text/html' href='http://kadiry.blogspot.com/2008/12/dataview-gridview-formview-gibi.html' title='SqlDataSource Exception Handling'/><author><name>kadir</name><uri>http://www.blogger.com/profile/04188308032781301484</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-6618040296640841118.post-2642902677825920704</id><published>2008-12-10T14:51:00.002+02:00</published><updated>2008-12-10T16:06:48.927+02:00</updated><title type='text'>Google App Engine izlenimlerim</title><content type='html'>&lt;a href="http://code.google.com/appengine"&gt;Google App Engine &lt;/a&gt;(GAE), google sunucularında kendi uygulamalarınızı oluşturmanıza izin veren bir framework. İlgimi çekti, biraz kurcalayım dedim. Google'ın sağladığı &lt;a href="http://code.google.com/appengine/docs/gettingstarted/"&gt;dokümantasyon &lt;/a&gt;basit bir appengine uygulaması oluşturmak için yeterli başlangıç bilgisi sağlıyor.&lt;br /&gt;&lt;br /&gt;GAE uygulamaları, Facebook'dakine benzer bir şekilde, google hesaplarıyla entegre biçimde çalışıyor. Kullanıcılar google kullanıcı adı ve şifreleriyle sizin uygulamanıza login olabiliyor.&lt;br /&gt;&lt;br /&gt;GAE uygulamaları geliştirmek için python bilmeniz gerekiyor. Web uygulamaları yapmak için GAE, Django denen başka bir framework sunuyor. Datastore için ise GQL denen SQL'in biraz daha basit bir versiyonu kullanılıyor.&lt;br /&gt;&lt;br /&gt;Python öğrenilmesi kolay bir dil, kısa sürede adapte olmak mümkün. Ancak en büyük sorun python yazmak için adamakıllı bir ide'nin olmayışı. Python yazmak için 5-6 farklı ide denedim, ancak hiçbiri beni tatmin etmedi, bir kısmı hiç çalışmadı bile. Eclipse'nin pydev plugini rahatsız edici uyarılar veriyor, activestate'in comodo edit'i hata mesajlarından bir türlü çalışmıyor, vs. En sonunda kötünün iyisi diyerek &lt;a href="http://die-offenbachs.de/eric/"&gt;Eric &lt;/a&gt;denen bir ide'de karar kıldım. Aslında sorun python'un dynamically-typed bir dil olmasında, bu tip bir dil için otomatik tamamlaması düzgün çalışan bir ide yapmak sanırım pek mümkün olmuyor.&lt;br /&gt;&lt;br /&gt;Django'yu oldukça kullanışlı buldum. MVC patternini kullanıyor. Özellikle template yapısı çok başarılı. Başta GAE'nin XSLT desteğinin olmamasını yadırgamıştım, ancak django'nun sağladığı template sistemi, XSLT'nin yokluğunu bir miktar telafi ediyor.&lt;br /&gt;&lt;br /&gt;GQL ile ilk bakışta SQL gibi görünen ama SQL'in birçok özelliğinden mahrum bir data saklama mekanizması. Örneğin tabloları JOIN edemiyorsunuz, COUNT(*), GROUP BY gibi query'ler çalıştıramıyorsunuz. Hal böyle olunca GQL'i olduğu gibi kabul edip, SQL için oldukça basit çözülebilecek problemleri, GQL'e özgü yöntemlerle halletmeniz gerekiyor. Karmaşık query'ler için pek uygun olmasa da, basit data saklama ve çağırma gibi işlemler için oldukça kolay ve kullanışlı.&lt;br /&gt;&lt;br /&gt;Sonuç olarak GAE, gelecek vaad eden bir teknoloji. Ancak uygulama geliştirmek için doğru dürüst bir ide'nin olmayışı önemli bir sıkıntı. Basit uygulamalar için notepad'in azıcık daha gelişmişi gibi görünen editörler yeterli olabilir, ancak uygulamanız büyüdükçe bu tip editörler de bir yerde yetersiz kalacaktır.&lt;br /&gt;&lt;br /&gt;Google App Engine ile geliştirdiğim ilk uygulamaya &lt;a href="http://gdraw.appspot.com/"&gt;http://gdraw.appspot.com/&lt;/a&gt; adresinden ulaşılabilir.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6618040296640841118-2642902677825920704?l=kadiry.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kadiry.blogspot.com/feeds/2642902677825920704/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6618040296640841118&amp;postID=2642902677825920704' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6618040296640841118/posts/default/2642902677825920704'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6618040296640841118/posts/default/2642902677825920704'/><link rel='alternate' type='text/html' href='http://kadiry.blogspot.com/2008/12/google-app-engine-izlenimlerim.html' title='Google App Engine izlenimlerim'/><author><name>kadir</name><uri>http://www.blogger.com/profile/04188308032781301484</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-6618040296640841118.post-4440065168575274714</id><published>2008-09-26T16:52:00.005+03:00</published><updated>2009-10-23T18:04:33.721+03:00</updated><title type='text'>DbNull değerini cast etmek</title><content type='html'>Tablonuzda null olabilecek int tipinde bir alanınız olduğunu varsayalım. Bu alanı int'e cast etmeden önce DbNull olup olmadığını kontrol etmeniz gerekir. Yoksa aşağıdaki gibi bir ifade "abc" alanının null olduğu durumda invalid cast exception verecektir.&lt;br /&gt;&lt;code&gt;&lt;br /&gt;int abc = (int)reader["abc"];&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;Bu hatanın oluşmaması için ifade şu şekilde yazılmalıdır:&lt;br /&gt;&lt;code&gt;&lt;br /&gt;int abc;&lt;br /&gt;if (reader["abc"] == DbNull.Value)&lt;br /&gt;{&lt;br /&gt;abc = 0;&lt;br /&gt;}&lt;br /&gt;else&lt;br /&gt;{&lt;br /&gt;abc = (int)reader["abc"];&lt;br /&gt;}&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;ancak bu da fazlasıyla uzun görünüyor. dün keşfettiğim ?? operatörü bu işi son derece temiz bir şekilde çözüyor:&lt;br /&gt;&lt;code&gt;&lt;br /&gt;int abc = reader["abc"] as int? ?? 0; &lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6618040296640841118-4440065168575274714?l=kadiry.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kadiry.blogspot.com/feeds/4440065168575274714/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6618040296640841118&amp;postID=4440065168575274714' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6618040296640841118/posts/default/4440065168575274714'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6618040296640841118/posts/default/4440065168575274714'/><link rel='alternate' type='text/html' href='http://kadiry.blogspot.com/2008/09/dbnull-deerini-cast-etmek.html' title='DbNull değerini cast etmek'/><author><name>kadir</name><uri>http://www.blogger.com/profile/04188308032781301484</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-6618040296640841118.post-5403330680278965028</id><published>2008-09-25T12:19:00.003+03:00</published><updated>2009-10-23T18:05:45.752+03:00</updated><title type='text'>çift soru işareti operatörü (??)</title><content type='html'>bugün tesadüfen böyle bir operatörün (??) varlığını keşfettim. kısa kodlar yazmayı seven biriyseniz buna bayılacaksınız. işlevi nullable type'lar için bu operatör null olmayan ilk değeri döndürmek.&lt;br /&gt;&lt;br /&gt;yani;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;string action;&lt;br /&gt;if (string.IsNullOrEmpty(Request.QueryString["action"]))&lt;br /&gt;{&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;action = "defaultAction";&lt;br /&gt;}&lt;br /&gt;else&lt;br /&gt;{&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;action = Request.QueryString["action"];&lt;br /&gt;}&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;gibi bir kodu şu şekilde yazabilirsiniz:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;string action = Request.QueryString["action"] ?? "defaultAction";&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6618040296640841118-5403330680278965028?l=kadiry.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kadiry.blogspot.com/feeds/5403330680278965028/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6618040296640841118&amp;postID=5403330680278965028' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6618040296640841118/posts/default/5403330680278965028'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6618040296640841118/posts/default/5403330680278965028'/><link rel='alternate' type='text/html' href='http://kadiry.blogspot.com/2008/09/ift-soru-iareti-operatr.html' title='çift soru işareti operatörü (??)'/><author><name>kadir</name><uri>http://www.blogger.com/profile/04188308032781301484</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-6618040296640841118.post-3060613960790469504</id><published>2008-09-04T11:09:00.002+03:00</published><updated>2008-09-04T11:16:07.170+03:00</updated><title type='text'>ajax wcf servislerinde ilginç problem</title><content type='html'>&lt;div&gt;class'larımı wcf service'inin ulaşabilmesi için [DataContract] ve [DataMember] ekliyoruz. fakat yaptığım bir işlemden sonra servisim çalışmamaya başladı ve problemi bulmak için 1 tam gün uğraştım. sonunda herşeyi baştan adım adım yaparak problemin nerede patlak verdiğini buldum.&lt;/div&gt;&lt;div&gt;bir class'ın propertylerinden birini [DataMember] yapacaksanız, bu property'nin setter metodu muhakkak olmalıymış, aksi takdirde wcf servisi çalışmıyor.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;[DataMember]&lt;/div&gt;&lt;div&gt;public int ABC { get { return "abc"; } }&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;gibi bir property'niz varsa build sırasında bir hata vermeyecek, fakat wcf servisiniz de çalışmayacaktır. siz de servisim neden çalışmıyor diye kafayı yiyeceksiniz.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;sorunu çözmek için bir "set" eklemek yeterli.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;[DataMember]&lt;/div&gt;&lt;div&gt;public int ABC { get { return "abc"; }  set { } }&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6618040296640841118-3060613960790469504?l=kadiry.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kadiry.blogspot.com/feeds/3060613960790469504/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6618040296640841118&amp;postID=3060613960790469504' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6618040296640841118/posts/default/3060613960790469504'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6618040296640841118/posts/default/3060613960790469504'/><link rel='alternate' type='text/html' href='http://kadiry.blogspot.com/2008/09/ajax-wcf-servislerinde-ilgin-problem.html' title='ajax wcf servislerinde ilginç problem'/><author><name>kadir</name><uri>http://www.blogger.com/profile/04188308032781301484</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-6618040296640841118.post-3947999804396343965</id><published>2008-04-08T21:42:00.002+03:00</published><updated>2008-04-08T21:46:59.462+03:00</updated><title type='text'>IIS7'de WCF Service Çalıştırmak</title><content type='html'>Evdeki Vista makinamda WCF servisi kullanan projemi çalıştırmayı denediğimde IIS7'nin svc uzantılı dosyamı 404.3 hatası vererek göstermediğini gördüm. Biraz araştırmadan sonra problemi çözmek için aşağıdaki programın çalıştırılması gerektiğini öğrendim:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;strong&gt;&lt;br /&gt;C:\WINDOWS\Microsoft.NET\Framework\v3.0\Windows Communication Foundation\ServiceModelReg.exe -i&lt;/strong&gt;&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6618040296640841118-3947999804396343965?l=kadiry.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kadiry.blogspot.com/feeds/3947999804396343965/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6618040296640841118&amp;postID=3947999804396343965' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6618040296640841118/posts/default/3947999804396343965'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6618040296640841118/posts/default/3947999804396343965'/><link rel='alternate' type='text/html' href='http://kadiry.blogspot.com/2008/04/iis7de-wcf-service-altrmak.html' title='IIS7&apos;de WCF Service Çalıştırmak'/><author><name>kadir</name><uri>http://www.blogger.com/profile/04188308032781301484</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-6618040296640841118.post-2148034906830266068</id><published>2008-03-24T13:55:00.003+02:00</published><updated>2008-03-24T14:16:33.311+02:00</updated><title type='text'>Explorer'da &lt;pre&gt; tag'i ile innerHTML kullanmak</title><content type='html'>Explorer'da bir pre tag'inin içeriğini innerHTML kullanarak değiştirmeye çalıştığınızda içeriğin normalize edilerek eklendiğini göreceksiniz. Örneğin arka arkaya 3 tane enter varsa bunu tek enter'a dönüştürecektir. Bu ise pre tag'i için hiç de istenmeyen bir durumdur.&lt;br /&gt;&lt;br /&gt;Explorer'a has bu sorun, yine Explorer'a has bir özellik olan outerHTML ile çözülebiliyor. Yapılması gereken &lt;br /&gt;&lt;code&gt;document.getElementById('pre1').innerHTML = 'abc'&lt;/code&gt; yerine &lt;code&gt;document.getElementById('pre1').outerHTML = '&amp;lt;pre&amp;gt;' + 'abc' + '&amp;lt;/pre&amp;gt;'&lt;/code&gt; kullanmak.&lt;br /&gt;&lt;br /&gt;outerHTML Firefox tarafından desteklenen bir özellik değil. Zaten Firefox'da bunu kullanmaya gerek de yok, zira sorun sadece Explorer'da mevcut.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6618040296640841118-2148034906830266068?l=kadiry.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kadiry.blogspot.com/feeds/2148034906830266068/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6618040296640841118&amp;postID=2148034906830266068' title='1 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6618040296640841118/posts/default/2148034906830266068'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6618040296640841118/posts/default/2148034906830266068'/><link rel='alternate' type='text/html' href='http://kadiry.blogspot.com/2008/03/explorerda-tagi-ile-innerhtml-kullanmak.html' title='Explorer&apos;da &amp;lt;pre&amp;gt; tag&apos;i ile innerHTML kullanmak'/><author><name>kadir</name><uri>http://www.blogger.com/profile/04188308032781301484</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-6618040296640841118.post-8123534800883859608</id><published>2008-03-15T23:32:00.000+02:00</published><updated>2008-03-15T23:37:51.679+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vista'/><category scheme='http://www.blogger.com/atom/ns#' term='iis'/><title type='text'>Vista Home Edition Üzerinde IIS Çalıştırmak</title><content type='html'>Vista Home Premium üzerinde IIS çalıştırmak hiç de tahmin ettiğim kadar zor değilmiş. Zira Vista'nın Home versiyonunda IIS desteği varmış zaten. Bunu aktifleştirmek için yapılması gereken tek şey &lt;strong&gt;Control Panel&gt; Programs&gt; Programs and Features&gt; Turn Windows features on or off&lt;/strong&gt; ekranından IIS'i seçip kurmak.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6618040296640841118-8123534800883859608?l=kadiry.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kadiry.blogspot.com/feeds/8123534800883859608/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6618040296640841118&amp;postID=8123534800883859608' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6618040296640841118/posts/default/8123534800883859608'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6618040296640841118/posts/default/8123534800883859608'/><link rel='alternate' type='text/html' href='http://kadiry.blogspot.com/2008/03/vista-home-edition-zerinde-iis-altrmak.html' title='Vista Home Edition Üzerinde IIS Çalıştırmak'/><author><name>kadir</name><uri>http://www.blogger.com/profile/04188308032781301484</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-6618040296640841118.post-5589244466929046496</id><published>2008-03-15T22:55:00.000+02:00</published><updated>2008-03-15T23:24:23.167+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='problem'/><category scheme='http://www.blogger.com/atom/ns#' term='sql server'/><category scheme='http://www.blogger.com/atom/ns#' term='vista'/><title type='text'>Vista Üzerine SQL Server 2005 Kurarken Yaşanan Problem ve Çözümü</title><content type='html'>Yeni aldığım PC'de Vista kurulu halde gelince mecburen ben de Vista'ya geçmek zorunda kaldım. Kurulumla birlikte gelen lüzumsuz programları kaldırdıktan sonra ilk iş Visual Studio 2008'i kurmak oldu. Fakat SQL Server 2005 Express'in kurulamadığına dair bir hata mesajıyla sonlandı setup. Biraz araştırmadan sonra SS2005'in Vista uyumlu olmadığını, bunun için SP1 versiyonunun kurulması gerektiğini öğrendim. SP2'li versiyonu buldum ve onu kurdum. Fakat o da ne? Bu kez başka bir sorun:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Error message when you install SQL Server 2005 Express Edition Service Pack 1 in Windows Vista: "Windows NT user or group&lt;br /&gt;'&lt;computername&gt;\SQLServer2005MSSQLUser$&lt;computername&gt;$MSSQLSERVER'&lt;br /&gt;not found"&lt;/blockquote&gt;Biraz daha araştırmadan sonra &lt;a href="http://support.microsoft.com/kb/929105"&gt;http://support.microsoft.com/kb/929105&lt;/a&gt; adresindeki çözümü buldum. Bu makaleye göre bilgisayar adını Computer değil de COMPUTER olarak yazınca sorunun düzelmesi gerekiyordu. Bilgisayarımın adı Kadir2 idi, onu KADIR2 yaptım. Fakat bu çözüm benim işime yaramamıştı.&lt;br /&gt;&lt;br /&gt;Bir kaç başarısız denemeden sonra sorunun Türkçe bölgesel ayarlarıyla ilgili olabileceği geldi aklıma. Bilgisayarımın adını içinde I-İ geçmeyen bir isimle değiştirdim. Sorun düzelmişti.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Sonuç: Bilgisayarınızın ismini tamamen büyük harf yaptığınız halde SQL Server kuramamışsanız, bilgisayarınızın isminin içinde I harfi geçmediğinden emin olun.&lt;/strong&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6618040296640841118-5589244466929046496?l=kadiry.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kadiry.blogspot.com/feeds/5589244466929046496/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6618040296640841118&amp;postID=5589244466929046496' title='2 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6618040296640841118/posts/default/5589244466929046496'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6618040296640841118/posts/default/5589244466929046496'/><link rel='alternate' type='text/html' href='http://kadiry.blogspot.com/2008/03/vista-zerine-sql-server-2005-kurarken.html' title='Vista Üzerine SQL Server 2005 Kurarken Yaşanan Problem ve Çözümü'/><author><name>kadir</name><uri>http://www.blogger.com/profile/04188308032781301484</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></feed>
