<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:pingback="http://madskills.com/public/xml/rss/module/pingback/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0">
  <channel>
    <title>Daron Yöndem</title>
    <link>http://daron.yondem.com/tr/</link>
    <description>bir yazılımcının tasarıları...</description>
    <language>en-us</language>
    <copyright>Daron Yöndem</copyright>
    <lastBuildDate>Mon, 21 Jul 2008 09:00:14 GMT</lastBuildDate>
    <generator>newtelligence dasBlog 1.9.7174.0</generator>
    <managingEditor>daron@yondem.com</managingEditor>
    <webMaster>daron@yondem.com</webMaster>
    <item>
      <trackback:ping>http://daron.yondem.com/tr/Trackback.aspx?guid=5f68eec3-802c-4458-a535-2a94e588f0d8</trackback:ping>
      <pingback:server>http://daron.yondem.com/tr/pingback.aspx</pingback:server>
      <pingback:target>http://daron.yondem.com/tr/PermaLink.aspx?guid=5f68eec3-802c-4458-a535-2a94e588f0d8</pingback:target>
      <dc:creator>Your DisplayName here!</dc:creator>
      <wfw:comment>http://daron.yondem.com/tr/CommentView.aspx?guid=5f68eec3-802c-4458-a535-2a94e588f0d8</wfw:comment>
      <wfw:commentRss>http://daron.yondem.com/tr/SyndicationService.asmx/GetEntryCommentsRss?guid=5f68eec3-802c-4458-a535-2a94e588f0d8</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
Bizim <strong>INETA Summer Hit</strong>'ten bir hafta sonra 8-9 Ağustos (Cuma-Cumartesi)
tarihlerinde <a href="http://www.riatalks.com" target="_blank">riatalks.com</a> konferansı
var. Bundan yaklaşık bir ay kadar önce bu aktivitenin <a href="http://daron.yondem.com/tr/PermaLink.aspx?guid=5ede58db-44a0-4584-9931-985e7c4424c9" target="_blank"> deneme
sürümünü</a> gerçekleştirmiştik. Ben aktivitede Silverlight sunumumla yer almıştım.
Bu sefer de yine Silverlight sunumumla RIATalks'da yer alacağım. <strong>9 Ağustos
Cumartesi </strong>günü saat <strong>18.00-18.45</strong> arasında yapacağım sunumda
daha doğrudan Silverlight 2.0 demoları yapacağız. Tabi 45 dakikalık bir zaman kısıtı
epey sıkıcı fakat yapacak bir şey yok, kalan sahalar bizimdir :)
</p>
        <img width="0" height="0" src="http://daron.yondem.com/tr/aggbug.ashx?id=5f68eec3-802c-4458-a535-2a94e588f0d8" />
      </body>
      <title>RIAtalks Konferansı'nda Silverlight sunumum.</title>
      <guid isPermaLink="false">http://daron.yondem.com/tr/PermaLink.aspx?guid=5f68eec3-802c-4458-a535-2a94e588f0d8</guid>
      <link>http://daron.yondem.com/tr/PermaLink.aspx?guid=5f68eec3-802c-4458-a535-2a94e588f0d8</link>
      <pubDate>Mon, 21 Jul 2008 09:00:14 GMT</pubDate>
      <description>&lt;p&gt;
Bizim &lt;strong&gt;INETA Summer Hit&lt;/strong&gt;&amp;#39;ten bir hafta sonra 8-9 Ağustos (Cuma-Cumartesi)
tarihlerinde &lt;a href="http://www.riatalks.com" target="_blank"&gt;riatalks.com&lt;/a&gt; konferansı
var. Bundan yaklaşık bir ay kadar önce bu aktivitenin &lt;a href="http://daron.yondem.com/tr/PermaLink.aspx?guid=5ede58db-44a0-4584-9931-985e7c4424c9" target="_blank"&gt; deneme
sürümünü&lt;/a&gt; gerçekleştirmiştik. Ben aktivitede Silverlight sunumumla yer almıştım.
Bu sefer de yine Silverlight sunumumla RIATalks&amp;#39;da yer alacağım. &lt;strong&gt;9 Ağustos
Cumartesi &lt;/strong&gt;günü saat &lt;strong&gt;18.00-18.45&lt;/strong&gt; arasında yapacağım sunumda
daha doğrudan Silverlight 2.0 demoları yapacağız. Tabi 45 dakikalık bir zaman kısıtı
epey sıkıcı fakat yapacak bir şey yok, kalan sahalar bizimdir :)
&lt;/p&gt;
&lt;img width="0" height="0" src="http://daron.yondem.com/tr/aggbug.ashx?id=5f68eec3-802c-4458-a535-2a94e588f0d8" /&gt;</description>
      <comments>http://daron.yondem.com/tr/CommentView.aspx?guid=5f68eec3-802c-4458-a535-2a94e588f0d8</comments>
    </item>
    <item>
      <trackback:ping>http://daron.yondem.com/tr/Trackback.aspx?guid=25639775-eaa9-4698-917d-5f82060a3452</trackback:ping>
      <pingback:server>http://daron.yondem.com/tr/pingback.aspx</pingback:server>
      <pingback:target>http://daron.yondem.com/tr/PermaLink.aspx?guid=25639775-eaa9-4698-917d-5f82060a3452</pingback:target>
      <dc:creator>Your DisplayName here!</dc:creator>
      <wfw:comment>http://daron.yondem.com/tr/CommentView.aspx?guid=25639775-eaa9-4698-917d-5f82060a3452</wfw:comment>
      <wfw:commentRss>http://daron.yondem.com/tr/SyndicationService.asmx/GetEntryCommentsRss?guid=25639775-eaa9-4698-917d-5f82060a3452</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p style="text-align: left">
          <strong>INETA Summer Hit </strong>aktivitesine kayıtlar devam ediyor. Bu süreçte bugüne
kadar kayıt olan bini aşkın dostumuza aşağıdaki maili gönderdik. Sizinle blog üzerinden
de paylaşmak istedim. Bizi izlemeye devam edin ;)
</p>
        <p style="text-align: center">
          <img alt="INETA Summer Hit" height="131" src="http://daron.yondem.com/tr/content/binary/20072008_1.jpg" width="550" style="font-family: Verdana; font-size: x-small" />
        </p>
        <table width="500px" align="center">
          <tr>
            <td valign="top">
              <img alt="Daron Yöndem" height="89" src="http://daron.yondem.com/tr/content/binary/20072008_2.jpg" width="90" style="font-family: Verdana; font-size: x-small" />
            </td>
            <td style="text-align: left">
              <span style="font-family: Verdana; font-size: x-small">Hoş geldiniz!</span>
              <br style="font-family: Verdana; font-size: x-small" />
              <br style="font-family: Verdana; font-size: x-small" />
              <span style="font-family: Verdana; font-size: x-small">Yanlış okumadınız, veya ben
yanlış yazmadım. <strong>INETA Summer Hit</strong>'e hoş geldiniz. Seminerlerimiz
2-3 Ağustos'ta olabilir fakat siz online kaydınızı yaptığınıza göre şimdiden yavaş
yavaş bu güzel yolculuğa ısınmakta fayda var.<br />
Bu mail boyunca INETA Summer Hit'de 2 Ağustos gününde sizler için hazırladığımız
planların bir kısmından bahsedeceğiz. Dahası mı? Çok yakında. 3 Ağustos'un detaylarını
da kısa zamanda sizlerle paylaşıyor olacağım.<br />
Takvimlerinize not almayı unutmayın, eşleri dostları haberdar edin. Çok sıcak bir
hafta sonu bizi bekliyor.<br /><br /><a href="http://daron.yondem.com/tr/" target="_blank">Daron Yöndem</a><br /><strong>INETA Türkiye Başkanı, MVP</strong></span>
            </td>
          </tr>
          <tr>
            <td colspan="2" style="text-align: left">
              <br style="font-family: Verdana; font-size: x-small" />
              <span style="font-family: Verdana; font-size: x-small">
                <strong> Silverlight 2.0</strong>
              </span>
              <br style="font-family: Verdana; font-size: x-small" />
              <span style="font-family: Verdana; font-size: x-small">Bu demo içerisinde Silverlight
nedir sorusuna cevap vermekle çok fazla zaman tüketmeyeceğiz. Onun yerine hemen Silverlight
2.0 uygulamalarına geçerek animasyonlu ve veritabanı bağlantılı dinamik örnekler hazırlayacağız.
Video uygulamaları da tabi ki yine ilgi alanımızda olacak. Sabah 09.30'da başlayan
seminere geç kalanlar üzülecektir, erken kalkar erken yol alır diyelim. Yapacak çok
işimiz var, dolu dolu bir hafta sonu bizi bekliyor.</span>
              <br style="font-family: Verdana; font-size: x-small" />
              <span style="color: #000080; font-family: Verdana; font-size: x-small">
                <strong>Gelmeden
neler yapmalı?</strong>
              </span>
              <br style="font-family: Verdana; font-size: x-small" />
              <span style="font-family: Verdana">
                <span style="font-size: x-small"> Silverlight'ın
bir önceki sürümü ile ilgili internetteki Daron Yöndem'e ait bir semineri online
olarak izleyebilirsiniz. Konuya ısınmanızı sağlayacaktır. Seminere ulaşmak için </span>
                <a href="http://daron.yondem.com/tr/ct.ashx?id=1ac88fb9-146e-4f96-ba4d-45e58dfb0897&amp;url=http%3a%2f%2fvideo.google.com%2fvideoplay%3fdocid%3d-5195533478324657131%26q%3ddaron%26ei%3dDGZ7SNPmMIXq2QLA_ZyABA" target="_blank">
                  <span style="font-size: x-small">tıklayın</span>
                </a>
                <span style="font-size: x-small">. </span>
              </span>
              <br style="font-family: Verdana; font-size: x-small" />
              <br style="font-family: Verdana; font-size: x-small" />
              <span style="font-family: Verdana; font-size: x-small">
                <strong>Yazılım Dünyası Nereye?</strong>
              </span>
              <br style="font-family: Verdana; font-size: x-small" />
              <span style="font-family: Verdana">
                <span style="font-size: x-small"> Sevgili <a href="http://alieyuboglu.blogspot.com/" target="_blank">Ali
Servet Eyüpoğlu</a>, <a href="http://www.alibabaoglan.com/" target="_blank">Ali Rıza
Babaoğlan</a>, <a href="http://www.eralperat.com/" target="_blank">Eralp Erat</a> ve <a href="http://kadircamoglu.blogspot.com/" target="_blank">Kadir
Çamoğlu</a>'nun katılacağı bu sohbette belki başka sürpriz katılımcılarımız da
olabilir. Amacımız yazılım dünyasının gidişatını incelemek, gittiği yeri görmeye çalışmak.
Tabi tüm bunları yaparken konuşmacılımızın da bu maceranın neresinde olduklarını ve
kişisel taktiklerini öğrenmeye çalışacağız. Çok zevkli olacağından eminim.</span>
              </span>
              <br style="font-family: Verdana; font-size: x-small" />
              <span style="color: #000080; font-family: Verdana; font-size: x-small">
                <strong>Gelmeden
neler yapmalı?</strong>
              </span>
              <br style="font-family: Verdana; font-size: x-small" />
              <span style="font-family: Verdana">
                <span style="font-size: x-small"> Sormak istediğiniz
sorularınızı hazırlayın. Konuşmacılarımızın bloglarını bir inceleyin. Yukarıdaki metinde
isimlerine tıklayarak sitelerine ulaşabilirsiniz.</span>
              </span>
              <br style="font-family: Verdana; font-size: x-small" />
              <br style="font-family: Verdana; font-size: x-small" />
              <span style="font-family: Verdana; font-size: x-small">
                <strong>Team Foundation Server</strong>
              </span>
              <br style="font-family: Verdana; font-size: x-small" />
              <span style="font-family: Verdana; font-size: x-small">Yazılım dünyasında büyük işler
takım işidir. Takım işi dediğimizde de TFS karşımıza çıkıyor. TFS sunumuyla Eralp
Erat karşımızda olacak. Sevgili Eralp'in daha önce demolarına girmeyenler için
ufak bir ipucu; 18.00'da biteceğini sandığımız sunuma erzak yedeği ile gelmenizde
fayda var. Akşam gerçekten çok uzun olabilir.</span>
              <br style="font-family: Verdana; font-size: x-small" />
              <br style="font-family: Verdana; font-size: x-small" />
              <span style="font-family: Verdana; font-size: x-small">
                <strong>
                  <em>Başka ne yapabilirim?</em>
                </strong>
              </span>
              <br style="font-family: Verdana; font-size: x-small" />
              <span style="font-family: Verdana">
                <span style="font-size: x-small">İş arkadaşlarınızı
bu aktiviteden mahrum etmeyin! Hemen onlarla da </span>
                <a href="http://tinyurl.com/inetasummerhit">
                  <span style="font-size: x-small">http://tinyurl.com/inetasummerhit</span>
                </a>
                <span style="font-size: x-small"> adresini
paylaşarak aktiviteden haberdar edin. Sitenizde veya blogunuzda aktiviteyi duyurmak
isterseniz yukarıdaki adrese linkleyerek aşağıdaki banner'ı kullanabilirsiniz.</span>
              </span>
              <br style="font-family: Verdana; font-size: x-small" />
              <br style="font-family: Verdana; font-size: x-small" />
              <img alt="INETA Summer Hit" height="60" src="http://daron.yondem.com/tr/content/binary/inetasummerhit2008_46860.jpg" style="font-family: Verdana; font-size: x-small" width="468" />
              <br style="font-family: Verdana; font-size: x-small" />
              <br style="font-family: Verdana; font-size: x-small" />
              <span style="font-family: Verdana; font-size: x-small">Bir sonraki mini bültenimizde
görüşmek üzere, iyi haftalar, iyi çalışmalar...</span>
              <br style="font-family: Verdana; font-size: x-small" />
              <br style="font-family: Verdana; font-size: x-small" />
            </td>
          </tr>
        </table>
        <img width="0" height="0" src="http://daron.yondem.com/tr/aggbug.ashx?id=25639775-eaa9-4698-917d-5f82060a3452" />
      </body>
      <title>INETA Summer Hit'den haberler: Bölüm 1</title>
      <guid isPermaLink="false">http://daron.yondem.com/tr/PermaLink.aspx?guid=25639775-eaa9-4698-917d-5f82060a3452</guid>
      <link>http://daron.yondem.com/tr/PermaLink.aspx?guid=25639775-eaa9-4698-917d-5f82060a3452</link>
      <pubDate>Sun, 20 Jul 2008 08:31:48 GMT</pubDate>
      <description>&lt;p style="text-align: left"&gt;
&lt;strong&gt;INETA Summer Hit &lt;/strong&gt;aktivitesine kayıtlar devam ediyor. Bu süreçte bugüne
kadar kayıt olan bini aşkın dostumuza aşağıdaki maili gönderdik. Sizinle blog üzerinden
de paylaşmak istedim. Bizi izlemeye devam edin ;)
&lt;/p&gt;
&lt;p style="text-align: center"&gt;
&lt;img alt="INETA Summer Hit" height="131" src="http://daron.yondem.com/tr/content/binary/20072008_1.jpg" width="550" style="font-family: Verdana; font-size: x-small" /&gt;
&lt;/p&gt;
&lt;table width="500px" align="center"&gt;
&lt;tr&gt;
&lt;td valign="top"&gt;
&lt;img alt="Daron Yöndem" height="89" src="http://daron.yondem.com/tr/content/binary/20072008_2.jpg" width="90" style="font-family: Verdana; font-size: x-small" /&gt;&lt;/td&gt;
&lt;td style="text-align: left"&gt;
&lt;span style="font-family: Verdana; font-size: x-small"&gt;Hoş geldiniz!&lt;/span&gt;
&lt;br style="font-family: Verdana; font-size: x-small" /&gt;
&lt;br style="font-family: Verdana; font-size: x-small" /&gt;
&lt;span style="font-family: Verdana; font-size: x-small"&gt;Yanlış okumadınız, veya ben
yanlış yazmadım. &lt;strong&gt;INETA Summer Hit&lt;/strong&gt;&amp;#39;e hoş geldiniz. Seminerlerimiz
2-3 Ağustos&amp;#39;ta olabilir fakat siz online kaydınızı yaptığınıza göre şimdiden yavaş
yavaş bu güzel yolculuğa ısınmakta fayda var.&lt;br /&gt;
Bu mail boyunca INETA Summer Hit&amp;#39;de 2 Ağustos gününde sizler için hazırladığımız
planların bir kısmından bahsedeceğiz. Dahası mı? Çok yakında. 3 Ağustos&amp;#39;un detaylarını
da kısa zamanda sizlerle paylaşıyor olacağım.&lt;br /&gt;
Takvimlerinize not almayı unutmayın, eşleri dostları haberdar edin. Çok sıcak bir
hafta sonu bizi bekliyor.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://daron.yondem.com/tr/" target="_blank"&gt;Daron Yöndem&lt;/a&gt;
&lt;br /&gt;
&lt;strong&gt;INETA Türkiye Başkanı, MVP&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td colspan="2" style="text-align: left"&gt;
&lt;br style="font-family: Verdana; font-size: x-small" /&gt;
&lt;span style="font-family: Verdana; font-size: x-small"&gt;&lt;strong&gt; Silverlight 2.0&lt;/strong&gt;&lt;/span&gt;
&lt;br style="font-family: Verdana; font-size: x-small" /&gt;
&lt;span style="font-family: Verdana; font-size: x-small"&gt;Bu demo içerisinde Silverlight
nedir sorusuna cevap vermekle çok fazla zaman tüketmeyeceğiz. Onun yerine hemen Silverlight
2.0 uygulamalarına geçerek animasyonlu ve veritabanı bağlantılı dinamik örnekler hazırlayacağız.
Video uygulamaları da tabi ki yine ilgi alanımızda olacak. Sabah 09.30&amp;#39;da başlayan
seminere geç kalanlar üzülecektir, erken kalkar erken yol alır diyelim. Yapacak çok
işimiz var, dolu dolu bir hafta sonu bizi bekliyor.&lt;/span&gt;
&lt;br style="font-family: Verdana; font-size: x-small" /&gt;
&lt;span style="color: #000080; font-family: Verdana; font-size: x-small"&gt; &lt;strong&gt;Gelmeden
neler yapmalı?&lt;/strong&gt;&lt;/span&gt;
&lt;br style="font-family: Verdana; font-size: x-small" /&gt;
&lt;span style="font-family: Verdana"&gt;&lt;span style="font-size: x-small"&gt; Silverlight&amp;#39;ın
bir önceki sürümü ile ilgili internetteki Daron Yöndem&amp;#39;e ait bir semineri online
olarak izleyebilirsiniz. Konuya ısınmanızı sağlayacaktır. Seminere ulaşmak için &lt;/span&gt; &lt;a href="http://daron.yondem.com/tr/ct.ashx?id=1ac88fb9-146e-4f96-ba4d-45e58dfb0897&amp;amp;url=http%3a%2f%2fvideo.google.com%2fvideoplay%3fdocid%3d-5195533478324657131%26q%3ddaron%26ei%3dDGZ7SNPmMIXq2QLA_ZyABA" target="_blank"&gt; &lt;span style="font-size: x-small"&gt;tıklayın&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size: x-small"&gt;. &lt;/span&gt;&lt;/span&gt; 
&lt;br style="font-family: Verdana; font-size: x-small" /&gt;
&lt;br style="font-family: Verdana; font-size: x-small" /&gt;
&lt;span style="font-family: Verdana; font-size: x-small"&gt;&lt;strong&gt;Yazılım Dünyası Nereye?&lt;/strong&gt;&lt;/span&gt;
&lt;br style="font-family: Verdana; font-size: x-small" /&gt;
&lt;span style="font-family: Verdana"&gt;&lt;span style="font-size: x-small"&gt; Sevgili &lt;a href="http://alieyuboglu.blogspot.com/" target="_blank"&gt;Ali
Servet Eyüpoğlu&lt;/a&gt;, &lt;a href="http://www.alibabaoglan.com/" target="_blank"&gt;Ali Rıza
Babaoğlan&lt;/a&gt;, &lt;a href="http://www.eralperat.com/" target="_blank"&gt;Eralp Erat&lt;/a&gt; ve &lt;a href="http://kadircamoglu.blogspot.com/" target="_blank"&gt;Kadir
Çamoğlu&lt;/a&gt;&amp;#39;nun katılacağı bu sohbette belki başka sürpriz katılımcılarımız da
olabilir. Amacımız yazılım dünyasının gidişatını incelemek, gittiği yeri görmeye çalışmak.
Tabi tüm bunları yaparken konuşmacılımızın da bu maceranın neresinde olduklarını ve
kişisel taktiklerini öğrenmeye çalışacağız. Çok zevkli olacağından eminim.&lt;/span&gt;&lt;/span&gt;
&lt;br style="font-family: Verdana; font-size: x-small" /&gt;
&lt;span style="color: #000080; font-family: Verdana; font-size: x-small"&gt; &lt;strong&gt;Gelmeden
neler yapmalı?&lt;/strong&gt;&lt;/span&gt;
&lt;br style="font-family: Verdana; font-size: x-small" /&gt;
&lt;span style="font-family: Verdana"&gt;&lt;span style="font-size: x-small"&gt; Sormak istediğiniz
sorularınızı hazırlayın. Konuşmacılarımızın bloglarını bir inceleyin. Yukarıdaki metinde
isimlerine tıklayarak sitelerine ulaşabilirsiniz.&lt;/span&gt;&lt;/span&gt;
&lt;br style="font-family: Verdana; font-size: x-small" /&gt;
&lt;br style="font-family: Verdana; font-size: x-small" /&gt;
&lt;span style="font-family: Verdana; font-size: x-small"&gt;&lt;strong&gt;Team Foundation Server&lt;/strong&gt;&lt;/span&gt;
&lt;br style="font-family: Verdana; font-size: x-small" /&gt;
&lt;span style="font-family: Verdana; font-size: x-small"&gt;Yazılım dünyasında büyük işler
takım işidir. Takım işi dediğimizde de TFS karşımıza çıkıyor. TFS sunumuyla Eralp
Erat karşımızda olacak. Sevgili Eralp&amp;#39;in daha önce demolarına girmeyenler için
ufak bir ipucu; 18.00&amp;#39;da biteceğini sandığımız sunuma erzak yedeği ile gelmenizde
fayda var. Akşam gerçekten çok uzun olabilir.&lt;/span&gt;
&lt;br style="font-family: Verdana; font-size: x-small" /&gt;
&lt;br style="font-family: Verdana; font-size: x-small" /&gt;
&lt;span style="font-family: Verdana; font-size: x-small"&gt;&lt;strong&gt;&lt;em&gt;Başka ne yapabilirim?&lt;/em&gt;&lt;/strong&gt;&lt;/span&gt;
&lt;br style="font-family: Verdana; font-size: x-small" /&gt;
&lt;span style="font-family: Verdana"&gt;&lt;span style="font-size: x-small"&gt;İş arkadaşlarınızı
bu aktiviteden mahrum etmeyin! Hemen onlarla da &lt;/span&gt; &lt;a href="http://tinyurl.com/inetasummerhit"&gt; &lt;span style="font-size: x-small"&gt;http://tinyurl.com/inetasummerhit&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size: x-small"&gt; adresini
paylaşarak aktiviteden haberdar edin. Sitenizde veya blogunuzda aktiviteyi duyurmak
isterseniz yukarıdaki adrese linkleyerek aşağıdaki banner&amp;#39;ı kullanabilirsiniz.&lt;/span&gt;&lt;/span&gt;
&lt;br style="font-family: Verdana; font-size: x-small" /&gt;
&lt;br style="font-family: Verdana; font-size: x-small" /&gt;
&lt;img alt="INETA Summer Hit" height="60" src="http://daron.yondem.com/tr/content/binary/inetasummerhit2008_46860.jpg" style="font-family: Verdana; font-size: x-small" width="468" /&gt;
&lt;br style="font-family: Verdana; font-size: x-small" /&gt;
&lt;br style="font-family: Verdana; font-size: x-small" /&gt;
&lt;span style="font-family: Verdana; font-size: x-small"&gt;Bir sonraki mini bültenimizde
görüşmek üzere, iyi haftalar, iyi çalışmalar...&lt;/span&gt;
&lt;br style="font-family: Verdana; font-size: x-small" /&gt;
&lt;br style="font-family: Verdana; font-size: x-small" /&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;img width="0" height="0" src="http://daron.yondem.com/tr/aggbug.ashx?id=25639775-eaa9-4698-917d-5f82060a3452" /&gt;</description>
      <comments>http://daron.yondem.com/tr/CommentView.aspx?guid=25639775-eaa9-4698-917d-5f82060a3452</comments>
    </item>
    <item>
      <trackback:ping>http://daron.yondem.com/tr/Trackback.aspx?guid=58677c9b-1b1e-424d-a8c8-862ac5e296ac</trackback:ping>
      <pingback:server>http://daron.yondem.com/tr/pingback.aspx</pingback:server>
      <pingback:target>http://daron.yondem.com/tr/PermaLink.aspx?guid=58677c9b-1b1e-424d-a8c8-862ac5e296ac</pingback:target>
      <dc:creator>Your DisplayName here!</dc:creator>
      <wfw:comment>http://daron.yondem.com/tr/CommentView.aspx?guid=58677c9b-1b1e-424d-a8c8-862ac5e296ac</wfw:comment>
      <wfw:commentRss>http://daron.yondem.com/tr/SyndicationService.asmx/GetEntryCommentsRss?guid=58677c9b-1b1e-424d-a8c8-862ac5e296ac</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
Silverlight 2.0 Beta 2 içerisinde istemci makinedeki herhangi bir dosyaya ulaşmakla
ilgili örneklerimizde <strong>Open File Dialog</strong> nesnesini detayları ile incelemiştik.
Tam zıttı bir senaryoda da kullanıcıya sistemine kaydedebileceği bir dosya vermek
isteyebiliriz. Bu gibi bir çözüm için maalesef Save File Dialog gibi bir kontrole
sahip değiliz. O nedenle biraz farklı bir taktik uygulayarak kullanıcıya vermek istediğimiz
dosyayı ilk olarak sunucuya göndererek kaydedeceğiz sonrasında da sunucudan dosyayı
tekrar istemcinin alarak kaydedebilmesini sağlayacağız. Bu senaryo ilk bakışta çok
saçma gibi gözükse de aslında dosya yaratma işlemini sunucu tarafında yaparsanız herhangi
bir performans sorunu olmayacaktır. Gönül isterdi ki dosyayı tamamen istemcide Silverlight
ile yaratarak kullanıcıya verebilelim. Fakat maalesef şimdilik en azından Beta 2 içerisinde
böyle bir şansımız yok.
</p>
        <p>
Peki herşeyi yaptık, dosyamızı <strong>Silverlight 2.0 Beta 2</strong> ile yarattık,
sunucuya bir web servisi aracılığı ile gönderdik ve kaydettik. Bundan sonrasında bu
dosyayı Silverlight içerisinden istemcideki kullanıcıya nasıl vereceğiz. Kullanacağımız
taktik aslında epeyce basit. Tüm tarayıcılarda kullanıcıyı dosya downloadu için dosyanın
bulunduğu adrese yönlendirirseniz hemen "Download" penceresi açılacaktır.
Kullanıcının içerisinde bulunduğu web sayfası hala görüntülenmeye devam edecektir.
Yani aslında siz kullanıcıyı başka bir adrese yönlendiriyor olsanız da söz konusu
adreste bir sayfa olmadığı için görüntüde bir değişiklik olmayacak ve hedef adresteki
dosyanın download işlemi başlayacaktır. Biz de Silverlight tarafından bu taktikten
faydalanacağız ve sayfanın adresini kullanıcının indirmesini istediği adres ile değiştirerek
tarayıcının "Save File Dialog" açmasını sağlayacağız.
</p>
        <p>
          <strong>[VB]</strong>
        </p>
        <p style="margin: 0px;">
        <span style="color: blue;">Dim</span> Adres <span style="color: blue;">As</span> Uri
</p>
        <p style="margin-top: 0px;">
        Uri.TryCreate(System.Windows.Browser.HtmlPage.Document.DocumentUri, <span style="color: blue;">New</span> Uri(<span style="color: #a31515;">"indir.zip"</span>,
UriKind.Relative), Adres)
</p>
        <p>
          <strong>[C#]</strong>
        </p>
        <p style="margin: 0px;">
            <span style="color: #2b91af;">Uri</span> Adres;
</p>
        <p style="margin-top: 0px;">
            <span style="color: #2b91af;">Uri</span>.TryCreate(System.Windows.Browser.<span style="color: #2b91af;">HtmlPage</span>.Document.DocumentUri, <span style="color: blue;">new</span><span style="color: #2b91af;">Uri</span>(<span style="color: #a31515;">"teklialtyazi.zip"</span>, <span style="color: #2b91af;">UriKind</span>.Relative), <span style="color: blue;">out</span> Adres);
</p>
        <p>
İlk olarak kullanıcıyı yönlendirmek istediğimiz adresi oluşturmamız gerek. Bunun için <strong>Uri</strong> sınıfındaki <strong>TryCreate</strong> metodunu
kullanacağız. Bu metod bizden bir base <strong>Uri</strong> ve <strong>Relative</strong> Uri
alarak ikisini birleştirebiliyor. <strong>Base</strong><strong>Url</strong> için
içerisinde bulunduğumuz sayfanın adresini <strong> System.Windows.Browser.HtmlPage.Document.DocumentUri</strong> ile
veriyoruz, relative <strong>Uri</strong> için yeni bir <strong>Uri</strong> değişkeni
yaratıp download edilecek olan dosyanın adını veriyoruz. Son olarak da almak sonucun
aktarılacağı yeni <strong>Uri</strong> değişkenimizi referans olarak aktarıyoruz.
</p>
        <p>
          <strong>[VB]</strong>
        </p>
        <p style="margin-top: 0px;">
        <span style="color: blue;">CType</span>(System.Windows.Browser.HtmlPage.Document.GetProperty(<span style="color: #a31515;">"location"</span>),
System.Windows.Browser.ScriptObject).SetProperty(<span style="color: #a31515;">"href"</span>,
Adres.ToString)
</p>
        <p>
          <strong>[C#]</strong>
        </p>
        <p style="margin-top: 0px;">
            ((System.Windows.Browser.<span style="color: #2b91af;">ScriptObject</span>)System.Windows.Browser.<span style="color: #2b91af;">HtmlPage</span>.Document.GetProperty(<span style="color: #a31515;">"location"</span>)).SetProperty(<span style="color: #a31515;">"href"</span>,
Adres.ToString()); 
</p>
        <p>
Simdi yapmamız gereken ise sayfanın adresini bir önceki adımda elde ettiğimiz adres
ile değiştirmek. İlk olarak <strong> System.Windows.Browser.HtmlPage.Document.GetProperty</strong> ile
sayfadaki dokümanın location özelliğini alıyoruz. Sonrasında da dokümanı bir <strong> ScriptObject'e</strong> cast
ederek <strong>SetProperty</strong> ile <strong> href</strong> özelliğini değiştiriyoruz.
Aslında bunu biraz JavaScript'teki <strong>document.location.href</strong> özelliğine
benzetebilirsiniz. Artık kodumuzu çalıştırdığımızda Silverlight içerisinde herhangi
bir düğmeye basıldığında otomatik olarak tarayıcının "Save File Dialog"
penceresi açılacak ve kullanıcı istediği dosyayı Silverlight tarafından indirebilecek.
</p>
        <p>
Hepinize kolay gelsin.
</p>
        <img width="0" height="0" src="http://daron.yondem.com/tr/aggbug.ashx?id=58677c9b-1b1e-424d-a8c8-862ac5e296ac" />
      </body>
      <title>Silverlight 2.0 içerisinden Download penceresi açtırmak.</title>
      <guid isPermaLink="false">http://daron.yondem.com/tr/PermaLink.aspx?guid=58677c9b-1b1e-424d-a8c8-862ac5e296ac</guid>
      <link>http://daron.yondem.com/tr/PermaLink.aspx?guid=58677c9b-1b1e-424d-a8c8-862ac5e296ac</link>
      <pubDate>Sat, 19 Jul 2008 11:58:35 GMT</pubDate>
      <description>&lt;p&gt;
Silverlight 2.0 Beta 2 içerisinde istemci makinedeki herhangi bir dosyaya ulaşmakla
ilgili örneklerimizde &lt;strong&gt;Open File Dialog&lt;/strong&gt; nesnesini detayları ile incelemiştik.
Tam zıttı bir senaryoda da kullanıcıya sistemine kaydedebileceği bir dosya vermek
isteyebiliriz. Bu gibi bir çözüm için maalesef Save File Dialog gibi bir kontrole
sahip değiliz. O nedenle biraz farklı bir taktik uygulayarak kullanıcıya vermek istediğimiz
dosyayı ilk olarak sunucuya göndererek kaydedeceğiz sonrasında da sunucudan dosyayı
tekrar istemcinin alarak kaydedebilmesini sağlayacağız. Bu senaryo ilk bakışta çok
saçma gibi gözükse de aslında dosya yaratma işlemini sunucu tarafında yaparsanız herhangi
bir performans sorunu olmayacaktır. Gönül isterdi ki dosyayı tamamen istemcide Silverlight
ile yaratarak kullanıcıya verebilelim. Fakat maalesef şimdilik en azından Beta 2 içerisinde
böyle bir şansımız yok.
&lt;/p&gt;
&lt;p&gt;
Peki herşeyi yaptık, dosyamızı &lt;strong&gt;Silverlight 2.0 Beta 2&lt;/strong&gt; ile yarattık,
sunucuya bir web servisi aracılığı ile gönderdik ve kaydettik. Bundan sonrasında bu
dosyayı Silverlight içerisinden istemcideki kullanıcıya nasıl vereceğiz. Kullanacağımız
taktik aslında epeyce basit. Tüm tarayıcılarda kullanıcıyı dosya downloadu için dosyanın
bulunduğu adrese yönlendirirseniz hemen &amp;quot;Download&amp;quot; penceresi açılacaktır.
Kullanıcının içerisinde bulunduğu web sayfası hala görüntülenmeye devam edecektir.
Yani aslında siz kullanıcıyı başka bir adrese yönlendiriyor olsanız da söz konusu
adreste bir sayfa olmadığı için görüntüde bir değişiklik olmayacak ve hedef adresteki
dosyanın download işlemi başlayacaktır. Biz de Silverlight tarafından bu taktikten
faydalanacağız ve sayfanın adresini kullanıcının indirmesini istediği adres ile değiştirerek
tarayıcının &amp;quot;Save File Dialog&amp;quot; açmasını sağlayacağız.
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;[VB]&lt;/strong&gt;
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;Dim&lt;/span&gt; Adres &lt;span style="color: blue;"&gt;As&lt;/span&gt; Uri
&lt;/p&gt;
&lt;p style="margin-top: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; Uri.TryCreate(System.Windows.Browser.HtmlPage.Document.DocumentUri, &lt;span style="color: blue;"&gt;New&lt;/span&gt; Uri(&lt;span style="color: #a31515;"&gt;"indir.zip"&lt;/span&gt;,
UriKind.Relative), Adres)
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;[C#]&lt;/strong&gt;
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #2b91af;"&gt;Uri&lt;/span&gt; Adres;
&lt;/p&gt;
&lt;p style="margin-top: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #2b91af;"&gt;Uri&lt;/span&gt;.TryCreate(System.Windows.Browser.&lt;span style="color: #2b91af;"&gt;HtmlPage&lt;/span&gt;.Document.DocumentUri, &lt;span style="color: blue;"&gt;new&lt;/span&gt; &lt;span style="color: #2b91af;"&gt;Uri&lt;/span&gt;(&lt;span style="color: #a31515;"&gt;"teklialtyazi.zip"&lt;/span&gt;, &lt;span style="color: #2b91af;"&gt;UriKind&lt;/span&gt;.Relative), &lt;span style="color: blue;"&gt;out&lt;/span&gt; Adres);
&lt;/p&gt;
&lt;p&gt;
İlk olarak kullanıcıyı yönlendirmek istediğimiz adresi oluşturmamız gerek. Bunun için &lt;strong&gt;Uri&lt;/strong&gt; sınıfındaki &lt;strong&gt;TryCreate&lt;/strong&gt; metodunu
kullanacağız. Bu metod bizden bir base &lt;strong&gt;Uri&lt;/strong&gt; ve &lt;strong&gt;Relative&lt;/strong&gt; Uri
alarak ikisini birleştirebiliyor. &lt;strong&gt;Base&lt;/strong&gt; &lt;strong&gt;Url&lt;/strong&gt; için
içerisinde bulunduğumuz sayfanın adresini &lt;strong&gt; System.Windows.Browser.HtmlPage.Document.DocumentUri&lt;/strong&gt; ile
veriyoruz, relative &lt;strong&gt;Uri&lt;/strong&gt; için yeni bir &lt;strong&gt;Uri&lt;/strong&gt; değişkeni
yaratıp download edilecek olan dosyanın adını veriyoruz. Son olarak da almak sonucun
aktarılacağı yeni &lt;strong&gt;Uri&lt;/strong&gt; değişkenimizi referans olarak aktarıyoruz.
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;[VB]&lt;/strong&gt;
&lt;/p&gt;
&lt;p style="margin-top: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;CType&lt;/span&gt;(System.Windows.Browser.HtmlPage.Document.GetProperty(&lt;span style="color: #a31515;"&gt;"location"&lt;/span&gt;),
System.Windows.Browser.ScriptObject).SetProperty(&lt;span style="color: #a31515;"&gt;"href"&lt;/span&gt;,
Adres.ToString)
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;[C#]&lt;/strong&gt;
&lt;/p&gt;
&lt;p style="margin-top: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; ((System.Windows.Browser.&lt;span style="color: #2b91af;"&gt;ScriptObject&lt;/span&gt;)System.Windows.Browser.&lt;span style="color: #2b91af;"&gt;HtmlPage&lt;/span&gt;.Document.GetProperty(&lt;span style="color: #a31515;"&gt;"location"&lt;/span&gt;)).SetProperty(&lt;span style="color: #a31515;"&gt;"href"&lt;/span&gt;,
Adres.ToString()); 
&lt;/p&gt;
&lt;p&gt;
Simdi yapmamız gereken ise sayfanın adresini bir önceki adımda elde ettiğimiz adres
ile değiştirmek. İlk olarak &lt;strong&gt; System.Windows.Browser.HtmlPage.Document.GetProperty&lt;/strong&gt; ile
sayfadaki dokümanın location özelliğini alıyoruz. Sonrasında da dokümanı bir &lt;strong&gt; ScriptObject&amp;#39;e&lt;/strong&gt; cast
ederek &lt;strong&gt;SetProperty&lt;/strong&gt; ile &lt;strong&gt; href&lt;/strong&gt; özelliğini değiştiriyoruz.
Aslında bunu biraz JavaScript&amp;#39;teki &lt;strong&gt;document.location.href&lt;/strong&gt; özelliğine
benzetebilirsiniz. Artık kodumuzu çalıştırdığımızda Silverlight içerisinde herhangi
bir düğmeye basıldığında otomatik olarak tarayıcının &amp;quot;Save File Dialog&amp;quot;
penceresi açılacak ve kullanıcı istediği dosyayı Silverlight tarafından indirebilecek.
&lt;/p&gt;
&lt;p&gt;
Hepinize kolay gelsin.
&lt;/p&gt;
&lt;img width="0" height="0" src="http://daron.yondem.com/tr/aggbug.ashx?id=58677c9b-1b1e-424d-a8c8-862ac5e296ac" /&gt;</description>
      <comments>http://daron.yondem.com/tr/CommentView.aspx?guid=58677c9b-1b1e-424d-a8c8-862ac5e296ac</comments>
      <category>Silverlight 2.0</category>
    </item>
    <item>
      <trackback:ping>http://daron.yondem.com/tr/Trackback.aspx?guid=0222d77d-9277-4aa9-a01b-bb2ca2106a6f</trackback:ping>
      <pingback:server>http://daron.yondem.com/tr/pingback.aspx</pingback:server>
      <pingback:target>http://daron.yondem.com/tr/PermaLink.aspx?guid=0222d77d-9277-4aa9-a01b-bb2ca2106a6f</pingback:target>
      <dc:creator>Your DisplayName here!</dc:creator>
      <wfw:comment>http://daron.yondem.com/tr/CommentView.aspx?guid=0222d77d-9277-4aa9-a01b-bb2ca2106a6f</wfw:comment>
      <wfw:commentRss>http://daron.yondem.com/tr/SyndicationService.asmx/GetEntryCommentsRss?guid=0222d77d-9277-4aa9-a01b-bb2ca2106a6f</wfw:commentRss>
      <slash:comments>7</slash:comments>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
Sanırım artık herkes benim "Derli Kerem" serimi biliyor :) Bir yenisi daha
karşınızda...
</p>
        <p style="color:maroon;">
          <strong>Marketing çılgınlığı!</strong>
        </p>
        <p>
Geçenlerde yirmi yaşlarında bir kardeşim "<em>Yoruldum artık kod yazmaktan. Pazarlama
tarafına geçmek istiyorum.</em>" dediğinde nasıl güleceğimi şaşırdım bir an.
Yanlış anlamayın bu cümleyi söyleyen arkadaşımı çok severim, güldüğüm şey aslında
içerisinde bulunduğumuz durumun ta kendisi. Bugün etrafıma bakıyorum da bir "<strong>pazarlama</strong>"
çılgınlığıdır gidiyor. Pazarlama ile ilgili dergiler, kitaplar, söyleşiler, seminerler,
konferanslar... Seminerlerime katılanlardan en azından bazıları hatırlayacaktır, özellikle
Anadolu'dakilerde benim de üstüne basa basa söylediğim bir şey vardı "<em>Siz
burada bir şeyler yapıyor olabilirsiniz, ama kimsenin bundan haberi yoksa bu işin
hiçbir değeri yok.</em>" Tabi abartılmış bir cümle olduğunun farkındayım fakat
satışın hayatın her alanındaki önemi çok büyük ve bir işi yapmak kadar onu satabilmek
de önemlidir. Ammaaaa.... ÖNCE İŞ YAPMANIZ GEREK. 
</p>
        <p style="color:maroon;">
          <strong>İş yapacak adam yok!</strong>
        </p>
        <p>
Sektöre bakıyorum ciddi bir kalifiye eleman açığı var. Bunun üzerine yeni mezunların
ciddi bir kısmı da yukarıda bahsettiğim "pazarlama çılgınlığı" dalgasına
kapılınca gidişatımızın cidden kötü olduğunu söyleyebilirim. Ben üretici bir adamım,
pazarlama benim için "gerektiği kadar" var olması gereken bir olgudur hatta
beş senelik bir şirket sahibi olarak yeni öğreniyorum bile diyebilirim. Üretim benim
önceliğimdir. Herkes böyle olmak zorunda değil fakat bize üretecek adamlar da lazım. 
</p>
        <p>
Geçenlerde genç bir dostumuzdan (Başka bir genç:)) yine bir mail aldım "<em>Nasıl
sektörde adımı duyurabilirim?</em>" demiş kardeşimiz. Cevabım basit oldu: "<em>Güzel
işler yaparak</em>" Bunun için "iş nasıl yapılır" onu öğrenmen gerek.
Amaç yanlış. "<em>Nasıl tanınabilirim?</em>" sorusunun sorulduğu sektör
başka bir sektör. Oysa belli ki bizim sektörle ilgili gençlerin yanlış bir önyargısı
var veya durumu yanlış yansıtmışız. Tabi şimdi bana şöyle bir cevap verebilirsiniz
"<em>Eh sen tanınıyorsun?</em>". Ne yani her tanıyan gelip bana haftada
bir haraç mı veriyor? Tanınmak güzeldir, hoştur ama risklidir de. Sevdiklerinizin
sayısı arttıkça sevmeyenleriniz da artar, basit bir denklemdir aslında bu. Kendi adıma
konuşayım, benim hoşuma giden insanlara yardım etmek, bu nedenle "tanınmak"
da bu amaca hizmet ettiği için bana yarıyor. Daha çok insana yardımcı olabiliyorum.
Sizin yerinizde olsam "<em>Peygamber misin kardeşim sen?</em>" diye ukalaca
çıkışabilirdim :) Basit bir cevapla "<em>değilim</em>" :) ama benim yardım
konusundaki zayıflığımı taaa lise veya ortaokuldaki arkadaşlarımdan bile öğrenebilirsiniz.
(Referans : Istanbul Erkek Lisesi 11 Fen H). Neyse beni geçelim :)
</p>
        <p style="color:maroon;">
          <strong>Teşekkür edelim, ettirelim</strong>
        </p>
        <p>
Konuyu çok feci değiştireceğim :) Başlıktan belli olmadı mı? Konumuz anaokulundan
bir konu; teşekkür etmeyi öğrenelim. Geçenlerde çok fazla "teşekkür" ettiğimin
farkına vardım. Yakın bir dostumla yemek yiyorduk ve bana yemeğin sonunda garsona
toplam 24 kere teşekkür ettiğimi söyledi. Detay olarak belirtiyim, çorba, iskender,
koladan oluşan bir menüydü. Yani 24 tabak yemek yemedim. Sonraki hareketlerimde biraz
dikkat ettim konuya ve gördüm ki garsonun hesabı getirmesinden tutun, kolayı bardağıma
doldurmasına kadar her aşamada refleks olarak teşekkür ediyorum. Sonrasında "Gariplik
bende" sendromundan akıllıca sıyrılıp etrafıma bir göz attım ve gördüm ki en
gerekli durumlarda bile kimse kimseye teşekkür etmiyor. Teşekkür etmeyi unutmuşuz
ey millet!
</p>
        <p>
Bu aslında kısır bir döngü gibi. Kimse kimseye teşekkür etmeyince herkes "Zaten
bu onun görevi" şeklinde bir düşüncenin arkasına saklanıp "<em>Abi para
vermedik mi tabi ki getirecek yemeği!</em>" moduna giriyor. İki sorum var "<em>Teşekkür
etsen başın mı ağrır?</em>", "<em>İnsanlar yaptıklarına teşekkür etseler
hoşuna gitmez mi?</em>" Şimdi oturup düşünün ve siz de kendi hareketlerinize
dikkat edin. Eminim "<em>Teşekkür ederim</em>" demek içerisinde yaşadığımız
ortamı çok daha yaşanabilir kılacaktır. 
</p>
        <p style="color:maroon;">
          <strong>Türkçe elden gidiyor!</strong>
        </p>
        <p>
Dertli Kerem bu sefer "ortaya karışık" dertler döküyor, farkındayım. Bir
sonraki konu belki de ağızlara sıkça sakız edilen bir konudur fakat ben farklı bir
bakış açısıyla başlamak istiyorum. 
</p>
        <p>
Lise yıllarından başlayarak internette ve dergilerde yazılar yazmaya başladım. <a href="http://www.darkhardware.com/" target="_blank">darkhardware.com</a>'da
o zamanlardan kalma yazılarım hala durur. Lisedeyken PCWorld multimedya editörüydüm.
O zamanlar günlük Türkçe kullanımına bakış açım bugünlerden farklıydı. İngilizce kelimelerin
gün içerisinde konuşmalarda kullanılmasına çok kızardım. Oysa bugün inanmazsınız o
kadar fazla İngilizce kelime kullanıyorum ki! Bazen cümle bile kuruyorum :) Bu değişikliği
engelleyemedim. Fakat Allah'ü Şükür hala Türkçe'yi yeri geldiğinde düzgün
kullandığıma ve yazdığıma inanırım. Mesele şudur ki son zamanlarda dehşet bir yozlaşma
var! Özellikle yazılı Türkçe ile ilgili. Bu durum konuşulan Türkçe'nin yozlaşmasından
daha tehlikeli. Çünkü konuşulan Türkçe zaman içerisinde sürekli değişebilir fakat
yazılı aynı kaldığı sürece herkes bir şekilde bir limana demirli demektir. Oysa yazılı
Türkçe de değiştiği anda artık nerelere gidebileceğimizi tahmin bile edemezsiniz.
</p>
        <p>
          <em>"SenınLe TanısTıgım İçiN Joq MuDLuYum..."</em>
        </p>
        <p>
Bu nedir ya? Hatta "<em>What is this?</em>" :) Belki böylesini anlarlar.
Türkçe mi bu? Zar zor da olsa ben anlayabildiğime göre sanırım, evet, Türkçe. Ama
hayır! Ben Türkçemin bu hale gelmesini istemiyorum. 
</p>
        <p>
          <strong>Yaratık 1:</strong>sLm npr?;)<br /><strong>Yaratık 2:</strong>eiim jnm senten npr?
</p>
        <p>
Nasıl yani? Gençlik bu hale mi geldi? Kendimi bir an çok yaşlanmış hissettim. Bu arada
uç noktada olduğunu tahmin etmek istediğim bu örnekleri benimle paylaşan sevgili <strong>Doğukan
Demir</strong>'e buradan teşekkürler. Gözlerimi açmamı sağladı. Ben hala "dahi
anlamındaki de" ve "soru anlamındaki mi"nin ayrı yazılması derdini
çözemedik sanırken bir de baktım ki ohoooo....
</p>
        <p>
Peki bu sadece bizde mi var? Yani sadece dilini çürüten biz miyiz? Aslında değiliz.
Böyle sorunları hep salt kendimize mal etmeyi severiz ama durumun aslı farklı. İngilizce'yi
ele alalım. Bakalım aşağıdaki yazılanı okuyabilecek misiniz?
</p>
        <p>
          <strong>Funky Man 1</strong>: sup?<br /><strong>Funky Man 2</strong>: nm u?
</p>
        <p>
Biliyorum, biliyorum. Bizden kesinlikle geri kalmazlar. Hemen yukarıdaki yazışmanın
düzgün İngilizcesini de sizinle paylaşayım da rahatlayalım.
</p>
        <p>
          <strong>Funky Man 1</strong>: What's up?<br /><strong>Funky Man 2</strong>: Nothing much, you?
</p>
        <p>
Şimdi gelelim sadede; İngilizcedeki ile bizdeki yozlaşma arasındaki fark çok önemli.
Onlar yazışmayı kısaltmaya çalışırken biz bu konuda onlar kadar başarılı olmamakla
beraber bazen yazıyı uzatabiliyoruz bile. Bunların hepsinin internetteki MSN yazışmalarında
kaldığını sanıyorsanız yanılıyorsunuz. Doğrudur bir kısmı gerçekten sadece internette
kullanılıyor ama bir de bakıyoruz ki gençlerimiz İnternet olmuş çıkmış. Bunu zaten
engelleyemeyiz. İnternet gün geçtikçe daha çok hayatımızın bir parçası olacak ama
umarım düzgün Türkçe yazabilmek de sadece yazarların tekeline kalmaz. Belki blog dünyası
bu işi kurtarır mı? Belki de kalıcı yazılar daha ciddiye alınır diye tahmin edebiliriz.
Zaman gösterecek, ama bu soruna eğilmek gerek.
</p>
        <p>
Hepinize iyi hafta sonları ;)
</p>
        <img width="0" height="0" src="http://daron.yondem.com/tr/aggbug.ashx?id=0222d77d-9277-4aa9-a01b-bb2ca2106a6f" />
      </body>
      <title>Dertli Kerem Geri Döndü! Nereye gitmişti ki?</title>
      <guid isPermaLink="false">http://daron.yondem.com/tr/PermaLink.aspx?guid=0222d77d-9277-4aa9-a01b-bb2ca2106a6f</guid>
      <link>http://daron.yondem.com/tr/PermaLink.aspx?guid=0222d77d-9277-4aa9-a01b-bb2ca2106a6f</link>
      <pubDate>Fri, 18 Jul 2008 16:45:26 GMT</pubDate>
      <description>&lt;p&gt;
Sanırım artık herkes benim &amp;quot;Derli Kerem&amp;quot; serimi biliyor :) Bir yenisi daha
karşınızda...
&lt;/p&gt;
&lt;p style="color:maroon;"&gt;
&lt;strong&gt;Marketing çılgınlığı!&lt;/strong&gt;
&lt;/p&gt;
&lt;p&gt;
Geçenlerde yirmi yaşlarında bir kardeşim &amp;quot;&lt;em&gt;Yoruldum artık kod yazmaktan. Pazarlama
tarafına geçmek istiyorum.&lt;/em&gt;&amp;quot; dediğinde nasıl güleceğimi şaşırdım bir an.
Yanlış anlamayın bu cümleyi söyleyen arkadaşımı çok severim, güldüğüm şey aslında
içerisinde bulunduğumuz durumun ta kendisi. Bugün etrafıma bakıyorum da bir &amp;quot;&lt;strong&gt;pazarlama&lt;/strong&gt;&amp;quot;
çılgınlığıdır gidiyor. Pazarlama ile ilgili dergiler, kitaplar, söyleşiler, seminerler,
konferanslar... Seminerlerime katılanlardan en azından bazıları hatırlayacaktır, özellikle
Anadolu&amp;#39;dakilerde benim de üstüne basa basa söylediğim bir şey vardı &amp;quot;&lt;em&gt;Siz
burada bir şeyler yapıyor olabilirsiniz, ama kimsenin bundan haberi yoksa bu işin
hiçbir değeri yok.&lt;/em&gt;&amp;quot; Tabi abartılmış bir cümle olduğunun farkındayım fakat
satışın hayatın her alanındaki önemi çok büyük ve bir işi yapmak kadar onu satabilmek
de önemlidir. Ammaaaa.... ÖNCE İŞ YAPMANIZ GEREK. 
&lt;/p&gt;
&lt;p style="color:maroon;"&gt;
&lt;strong&gt;İş yapacak adam yok!&lt;/strong&gt;
&lt;/p&gt;
&lt;p&gt;
Sektöre bakıyorum ciddi bir kalifiye eleman açığı var. Bunun üzerine yeni mezunların
ciddi bir kısmı da yukarıda bahsettiğim &amp;quot;pazarlama çılgınlığı&amp;quot; dalgasına
kapılınca gidişatımızın cidden kötü olduğunu söyleyebilirim. Ben üretici bir adamım,
pazarlama benim için &amp;quot;gerektiği kadar&amp;quot; var olması gereken bir olgudur hatta
beş senelik bir şirket sahibi olarak yeni öğreniyorum bile diyebilirim. Üretim benim
önceliğimdir. Herkes böyle olmak zorunda değil fakat bize üretecek adamlar da lazım. 
&lt;/p&gt;
&lt;p&gt;
Geçenlerde genç bir dostumuzdan (Başka bir genç:)) yine bir mail aldım &amp;quot;&lt;em&gt;Nasıl
sektörde adımı duyurabilirim?&lt;/em&gt;&amp;quot; demiş kardeşimiz. Cevabım basit oldu: &amp;quot;&lt;em&gt;Güzel
işler yaparak&lt;/em&gt;&amp;quot; Bunun için &amp;quot;iş nasıl yapılır&amp;quot; onu öğrenmen gerek.
Amaç yanlış. &amp;quot;&lt;em&gt;Nasıl tanınabilirim?&lt;/em&gt;&amp;quot; sorusunun sorulduğu sektör
başka bir sektör. Oysa belli ki bizim sektörle ilgili gençlerin yanlış bir önyargısı
var veya durumu yanlış&amp;nbsp;yansıtmışız. Tabi şimdi bana şöyle bir cevap verebilirsiniz
&amp;quot;&lt;em&gt;Eh sen tanınıyorsun?&lt;/em&gt;&amp;quot;. Ne yani her tanıyan gelip bana haftada
bir haraç mı veriyor? Tanınmak güzeldir, hoştur ama risklidir de. Sevdiklerinizin
sayısı arttıkça sevmeyenleriniz da artar, basit bir denklemdir aslında bu. Kendi adıma
konuşayım, benim hoşuma giden insanlara yardım etmek, bu nedenle &amp;quot;tanınmak&amp;quot;
da bu amaca hizmet ettiği için bana yarıyor. Daha çok insana yardımcı olabiliyorum.
Sizin yerinizde olsam &amp;quot;&lt;em&gt;Peygamber misin kardeşim sen?&lt;/em&gt;&amp;quot; diye ukalaca
çıkışabilirdim :) Basit bir cevapla &amp;quot;&lt;em&gt;değilim&lt;/em&gt;&amp;quot; :) ama benim yardım
konusundaki zayıflığımı taaa lise veya ortaokuldaki arkadaşlarımdan bile öğrenebilirsiniz.
(Referans : Istanbul Erkek Lisesi 11 Fen H). Neyse beni geçelim :)
&lt;/p&gt;
&lt;p style="color:maroon;"&gt;
&lt;strong&gt;Teşekkür edelim, ettirelim&lt;/strong&gt;
&lt;/p&gt;
&lt;p&gt;
Konuyu çok feci değiştireceğim :) Başlıktan belli olmadı mı? Konumuz anaokulundan
bir konu; teşekkür etmeyi öğrenelim. Geçenlerde çok fazla &amp;quot;teşekkür&amp;quot; ettiğimin
farkına vardım. Yakın bir dostumla yemek yiyorduk ve bana yemeğin sonunda garsona
toplam 24 kere teşekkür ettiğimi söyledi. Detay olarak belirtiyim, çorba, iskender,
koladan oluşan bir menüydü. Yani 24 tabak yemek yemedim. Sonraki hareketlerimde biraz
dikkat ettim konuya ve gördüm ki garsonun hesabı getirmesinden tutun, kolayı bardağıma
doldurmasına kadar her aşamada refleks olarak teşekkür ediyorum. Sonrasında &amp;quot;Gariplik
bende&amp;quot; sendromundan akıllıca sıyrılıp etrafıma bir göz attım ve gördüm ki en
gerekli durumlarda bile kimse kimseye teşekkür etmiyor. Teşekkür etmeyi unutmuşuz
ey millet!
&lt;/p&gt;
&lt;p&gt;
Bu aslında kısır bir döngü gibi. Kimse kimseye teşekkür etmeyince herkes &amp;quot;Zaten
bu onun görevi&amp;quot; şeklinde bir düşüncenin arkasına saklanıp &amp;quot;&lt;em&gt;Abi para
vermedik mi tabi ki getirecek yemeği!&lt;/em&gt;&amp;quot; moduna giriyor. İki sorum var &amp;quot;&lt;em&gt;Teşekkür
etsen başın mı ağrır?&lt;/em&gt;&amp;quot;, &amp;quot;&lt;em&gt;İnsanlar yaptıklarına teşekkür etseler
hoşuna gitmez mi?&lt;/em&gt;&amp;quot; Şimdi oturup düşünün ve siz de kendi hareketlerinize
dikkat edin. Eminim &amp;quot;&lt;em&gt;Teşekkür ederim&lt;/em&gt;&amp;quot; demek içerisinde yaşadığımız
ortamı çok daha yaşanabilir kılacaktır. 
&lt;/p&gt;
&lt;p style="color:maroon;"&gt;
&lt;strong&gt;Türkçe elden gidiyor!&lt;/strong&gt;
&lt;/p&gt;
&lt;p&gt;
Dertli Kerem bu sefer &amp;quot;ortaya karışık&amp;quot; dertler döküyor, farkındayım. Bir
sonraki konu belki de ağızlara sıkça sakız edilen bir konudur fakat ben farklı bir
bakış açısıyla başlamak istiyorum. 
&lt;/p&gt;
&lt;p&gt;
Lise yıllarından başlayarak internette ve dergilerde yazılar yazmaya başladım. &lt;a href="http://www.darkhardware.com/" target="_blank"&gt;darkhardware.com&lt;/a&gt;&amp;#39;da
o zamanlardan kalma yazılarım hala durur. Lisedeyken PCWorld multimedya editörüydüm.
O zamanlar günlük Türkçe kullanımına bakış açım bugünlerden farklıydı. İngilizce kelimelerin
gün içerisinde konuşmalarda kullanılmasına çok kızardım. Oysa bugün inanmazsınız o
kadar fazla İngilizce kelime kullanıyorum ki! Bazen cümle bile kuruyorum :) Bu değişikliği
engelleyemedim. Fakat Allah&amp;#39;ü Şükür hala Türkçe&amp;#39;yi yeri geldiğinde düzgün
kullandığıma ve yazdığıma inanırım. Mesele şudur ki son zamanlarda dehşet bir yozlaşma
var! Özellikle yazılı Türkçe ile ilgili. Bu durum konuşulan Türkçe&amp;#39;nin yozlaşmasından
daha tehlikeli. Çünkü konuşulan Türkçe zaman içerisinde sürekli değişebilir fakat
yazılı aynı kaldığı sürece herkes bir şekilde bir limana demirli demektir. Oysa yazılı
Türkçe de değiştiği anda artık nerelere gidebileceğimizi tahmin bile edemezsiniz.
&lt;/p&gt;
&lt;p&gt;
&lt;em&gt;&amp;quot;SenınLe TanısTıgım İçiN Joq MuDLuYum...&amp;quot;&lt;/em&gt;
&lt;/p&gt;
&lt;p&gt;
Bu nedir ya? Hatta &amp;quot;&lt;em&gt;What is this?&lt;/em&gt;&amp;quot; :) Belki böylesini anlarlar.
Türkçe mi bu? Zar zor da olsa ben anlayabildiğime göre sanırım, evet, Türkçe. Ama
hayır! Ben Türkçemin bu hale gelmesini istemiyorum. 
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;Yaratık 1:&lt;/strong&gt;sLm npr?;)&lt;br&gt;
&lt;strong&gt;Yaratık 2:&lt;/strong&gt;eiim jnm senten npr?
&lt;/p&gt;
&lt;p&gt;
Nasıl yani? Gençlik bu hale mi geldi? Kendimi bir an çok yaşlanmış hissettim. Bu arada
uç noktada olduğunu tahmin etmek istediğim bu örnekleri benimle paylaşan sevgili &lt;strong&gt;Doğukan
Demir&lt;/strong&gt;&amp;#39;e buradan teşekkürler. Gözlerimi açmamı sağladı. Ben hala &amp;quot;dahi
anlamındaki de&amp;quot; ve &amp;quot;soru anlamındaki mi&amp;quot;nin ayrı yazılması derdini
çözemedik sanırken bir de baktım ki ohoooo....
&lt;/p&gt;
&lt;p&gt;
Peki bu sadece bizde mi var? Yani sadece dilini çürüten biz miyiz? Aslında değiliz.
Böyle sorunları hep salt kendimize mal etmeyi severiz ama durumun aslı farklı. İngilizce&amp;#39;yi
ele alalım. Bakalım aşağıdaki yazılanı okuyabilecek misiniz?
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;Funky Man 1&lt;/strong&gt;: sup?&lt;br&gt;
&lt;strong&gt;Funky Man 2&lt;/strong&gt;: nm u?
&lt;/p&gt;
&lt;p&gt;
Biliyorum, biliyorum. Bizden kesinlikle geri kalmazlar. Hemen yukarıdaki yazışmanın
düzgün İngilizcesini de sizinle paylaşayım da rahatlayalım.
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;Funky Man 1&lt;/strong&gt;: What&amp;#39;s up?&lt;br&gt;
&lt;strong&gt;Funky Man 2&lt;/strong&gt;: Nothing much, you?
&lt;/p&gt;
&lt;p&gt;
Şimdi gelelim sadede; İngilizcedeki ile bizdeki yozlaşma arasındaki fark çok önemli.
Onlar yazışmayı kısaltmaya çalışırken biz bu konuda onlar kadar başarılı olmamakla
beraber bazen yazıyı uzatabiliyoruz bile. Bunların hepsinin internetteki MSN yazışmalarında
kaldığını sanıyorsanız yanılıyorsunuz. Doğrudur bir kısmı gerçekten sadece internette
kullanılıyor ama bir de bakıyoruz ki gençlerimiz İnternet olmuş çıkmış. Bunu zaten
engelleyemeyiz. İnternet gün geçtikçe daha çok hayatımızın bir parçası olacak ama
umarım düzgün Türkçe yazabilmek de sadece yazarların tekeline kalmaz. Belki blog dünyası
bu işi kurtarır mı? Belki de kalıcı yazılar daha ciddiye alınır diye tahmin edebiliriz.
Zaman gösterecek, ama bu soruna eğilmek gerek.
&lt;/p&gt;
&lt;p&gt;
Hepinize iyi hafta sonları ;)
&lt;/p&gt;
&lt;img width="0" height="0" src="http://daron.yondem.com/tr/aggbug.ashx?id=0222d77d-9277-4aa9-a01b-bb2ca2106a6f" /&gt;</description>
      <comments>http://daron.yondem.com/tr/CommentView.aspx?guid=0222d77d-9277-4aa9-a01b-bb2ca2106a6f</comments>
    </item>
    <item>
      <trackback:ping>http://daron.yondem.com/tr/Trackback.aspx?guid=b133a50e-9d51-47bc-a552-fd2dcf871c00</trackback:ping>
      <pingback:server>http://daron.yondem.com/tr/pingback.aspx</pingback:server>
      <pingback:target>http://daron.yondem.com/tr/PermaLink.aspx?guid=b133a50e-9d51-47bc-a552-fd2dcf871c00</pingback:target>
      <dc:creator>Your DisplayName here!</dc:creator>
      <wfw:comment>http://daron.yondem.com/tr/CommentView.aspx?guid=b133a50e-9d51-47bc-a552-fd2dcf871c00</wfw:comment>
      <wfw:commentRss>http://daron.yondem.com/tr/SyndicationService.asmx/GetEntryCommentsRss?guid=b133a50e-9d51-47bc-a552-fd2dcf871c00</wfw:commentRss>
      <slash:comments>2</slash:comments>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
İster PHP olsun ister farklı sunucu taraflı programlama dilleri olsun hepsi de "adı
üzerinde" sunucu tarafında çalışıyorlar. Biz ise Silverlight tarafında tamamen
istemcide çalışıyor. Bu çerçevede Silverlight'ın tamamen sunucudan bağımsız olduğunu
düşünürsek aslında sunucu ile belirli standartları yakaladığımız sürece istediğimiz
sunucu taraflı programlama altyapısı ile entegrasyon sağlayabiliriz. Bu standartlar
WSDL kuralları çerçevesinde hazırlanmış bir web servisi olabileceği gibi bazen çok
basit bir POST işlemi bile olabilir. Bu yazımda <strong>Silverlight 2.0 Beta 2</strong> ile
beraber sunucu tarafında bir PHP kodu kullanarak mail gönderim işlemi yapacağız. Hazırladığımız
Silverlight 2.0 uygulamasının XAP dosyasını sunucuya atmamız uygulamamızın çalışması
için yeterli olacaktır.
</p>
        <p style="color:maroon;">
          <strong>Önce PHP tarafını çözelim!</strong>
        </p>
        <p>
PHP tarafında çok detaya girmeyeceğiz. Yapacağımız şey basit bir şekilde sayfaya POST
ile gönderilen değişkenleri alıp uygun bir mail mesaj stringi haline çevirdikten sonra
mail olarak istediğimiz kullanıcıya göndermek olacak.
</p>
        <p style="margin: 0px; color: #000080;">
﻿&lt;?php 
</p>
        <p style="margin: 0px;">
$senderName = <span style="color: #808000;">$_POST</span>[<span style="color: #a31515;">'Gonderen'</span>]; 
</p>
        <p style="margin: 0px;">
$senderEmail = <span style="color: #808000;">$_POST</span>[<span style="color: #a31515;">'Email'</span>]; 
</p>
        <p style="margin: 0px;">
$emailMessage = <span style="color: #808000;">$_POST</span>[<span style="color: #a31515;">'Mesaj'</span>]; 
</p>
        <p style="margin: 0px;">
$recipient = <span style="color: #a31515;">"alici@domain.com"</span>; 
</p>
        <p style="margin: 0px;">
$subject = <span style="color: #a31515;">"Mesaj Konusu"</span>; 
</p>
        <p style="margin: 0px;">
$headers = <span style="color: #a31515;">"From: $Email"</span>; 
</p>
        <p style="margin: 0px;">
$message = <span style="color: #a31515;">"Kimden: $Gonderen\nEposta Adresi: $Email\n\n
Mesaj: $Mesaj"</span>; 
</p>
        <p style="margin: 0px;">
$message = <span style="color: #008000">stripslashes</span>($message); 
</p>
        <p style="margin: 0px;">
          <span style="color: #008000">mail</span>($recipient, $subject, $message, $headers) 
</p>
        <p style="margin-top: 0px;color: #000080;">
?&gt; 
</p>
        <p>
Örneğimize devam ederken ufak bir uyarıda bulunmam gerek. Kesinlikle yukarıdaki gibi
bir PHP dosyasını sitenize bu haliyle bırakmayın. Şu an yukarıdaki dosyada ne post
eden arkadaşın kimliği, ne sender'ın agent tipi hiçbir şey kontrol edilmiyor.
Güvenlik açısından kesinlikle bu kodun geliştirilmesi gerek aksi halde önüne gelen
buraya bilgileri POST ederek size milyonlarca mail yollayabilir.
</p>
        <p style="color:maroon;">
          <strong>Uygulamamızın tasarımını yapalım</strong>
        </p>
        <p>
Yine çok basit bir mailform hazırlayacağız. Blend 2.5 içerisinden Silverlight sayfamıza
toplam üç adet TextBox ve bir de Button koyuyoruz. Site ziyaretçileri isimlerini,
maillerini ve mesajlarını yazarak düğmeye basıp gize gönderebilecekler. Oluşturduğumuz
uygulamanın XAML kodunu aşağıda inceleyebilirsiniz.
</p>
        <p style="margin: 0px;">
          <span style="color: blue;">&lt;</span>
          <span style="color: #a31515;">UserControl</span>
          <span style="color: red;"> x</span>
          <span style="color: blue;">:</span>
          <span style="color: red;">Class</span>
          <span style="color: blue;">="SilverlightApplication2.Page"</span>
        </p>
        <p style="margin: 0px;">
   <span style="color: red;"> xmlns</span><span style="color: blue;">="http://schemas.microsoft.com/winfx/2006/xaml/presentation"</span></p>
        <p style="margin: 0px;">
   <span style="color: red;"> xmlns</span><span style="color: blue;">:</span><span style="color: red;">x</span><span style="color: blue;">="http://schemas.microsoft.com/winfx/2006/xaml"</span></p>
        <p style="margin: 0px;">
   <span style="color: red;"> Width</span><span style="color: blue;">="400"</span><span style="color: red;"> Height</span><span style="color: blue;">="300"&gt;</span></p>
        <p style="margin: 0px;">
          <span style="color: #a31515;">    </span>
          <span style="color: blue;">&lt;</span>
          <span style="color: #a31515;">Grid</span>
          <span style="color: red;"> x</span>
          <span style="color: blue;">:</span>
          <span style="color: red;">Name</span>
          <span style="color: blue;">="LayoutRoot"</span>
          <span style="color: red;"> Background</span>
          <span style="color: blue;">="White"&gt;</span>
        </p>
        <p style="margin: 0px;">
          <span style="color: #a31515;">        </span>
          <span style="color: blue;">&lt;</span>
          <span style="color: #a31515;">
            <strong>TextBox</strong>
          </span>
          <span style="color: red;"> Height</span>
          <span style="color: blue;">="32"</span>
          <span style="color: red;"> Margin</span>
          <span style="color: blue;">="96,42,74,0"</span>
          <span style="color: red;"> VerticalAlignment</span>
          <span style="color: blue;">="Top"</span>
          <span style="color: red;"> Text</span>
          <span style="color: blue;">="Adınız"</span>
          <span style="color: red;"> TextWrapping</span>
          <span style="color: blue;">="Wrap"</span>
          <span style="color: red;"> x</span>
          <span style="color: blue;">:</span>
          <span style="color: red;">Name</span>
          <span style="color: blue;">="<strong>txtAdi</strong>"/&gt;</span>
        </p>
        <p style="margin: 0px;">
          <span style="color: #a31515;">        </span>
          <span style="color: blue;">&lt;</span>
          <span style="color: #a31515;">
            <strong>TextBox</strong>
          </span>
          <span style="color: red;"> Height</span>
          <span style="color: blue;">="29"</span>
          <span style="color: red;"> Margin</span>
          <span style="color: blue;">="96,88,74,0"</span>
          <span style="color: red;"> VerticalAlignment</span>
          <span style="color: blue;">="Top"</span>
          <span style="color: red;"> Text</span>
          <span style="color: blue;">="Mailiniz"</span>
          <span style="color: red;"> TextWrapping</span>
          <span style="color: blue;">="Wrap"</span>
          <span style="color: red;"> x</span>
          <span style="color: blue;">:</span>
          <span style="color: red;">Name</span>
          <span style="color: blue;">="<strong>txtMaili</strong>"/&gt;</span>
        </p>
        <p style="margin: 0px;">
          <span style="color: #a31515;">        </span>
          <span style="color: blue;">&lt;</span>
          <span style="color: #a31515;">
            <strong>TextBox</strong>
          </span>
          <span style="color: red;"> Margin</span>
          <span style="color: blue;">="96,132,74,81"</span>
          <span style="color: red;"> Text</span>
          <span style="color: blue;">="Mesajınız"</span>
          <span style="color: red;"> TextWrapping</span>
          <span style="color: blue;">="Wrap"</span>
          <span style="color: red;"> x</span>
          <span style="color: blue;">:</span>
          <span style="color: red;">Name</span>
          <span style="color: blue;">="<strong>txtMesaji</strong>"/&gt;</span>
        </p>
        <p style="margin: 0px;">
          <span style="color: #a31515;">        </span>
          <span style="color: blue;">&lt;</span>
          <span style="color: #a31515;">
            <strong>Button</strong>
          </span>
          <span style="color: red;"> Height</span>
          <span style="color: blue;">="32"</span>
          <span style="color: red;"> HorizontalAlignment</span>
          <span style="color: blue;">="Stretch"</span>
          <span style="color: red;"> Margin</span>
          <span style="color: blue;">="180,0,146,31"</span>
          <span style="color: red;"> VerticalAlignment</span>
          <span style="color: blue;">="Bottom"</span>
          <span style="color: red;"> Content</span>
          <span style="color: blue;">="Gönder"</span>
          <span style="color: red;"> x</span>
          <span style="color: blue;">:</span>
          <span style="color: red;">Name</span>
          <span style="color: blue;">="<strong>btnGonder</strong>"/&gt;</span>
        </p>
        <p style="margin: 0px;">
          <span style="color: #a31515;">    </span>
          <span style="color: blue;">&lt;/</span>
          <span style="color: #a31515;">Grid</span>
          <span style="color: blue;">&gt;</span>
        </p>
        <p style="margin-top: 0px;">
          <span style="color: blue;">&lt;/</span>
          <span style="color: #a31515;">UserControl</span>
          <span style="color: blue;">&gt;</span>
        </p>
        <p style="color:maroon;">
          <strong>Kodlamaya geçelim</strong>
        </p>
        <p>
Uygulamamızın kod kısmında bir WebClient nesnesi kullanacağız. WebClient nesnemize
sahnedeki tüm bilgileri bir String olarak vererek POST metodu ile bilgileri kendisine
parametre olarak vereceğimiz bir adrese göndermesini isteyeceğiz. 
</p>
        <p>
          <strong>[VB]</strong>
        </p>
        <p style="margin: 0px;">
        <span style="color: blue;">Dim</span> VeriGonder <span style="color: blue;">As</span><span style="color: blue;">New</span> System.Net.WebClient
</p>
        <p style="margin-top: 0px;">
        VeriGonder.Headers(HttpRequestHeader.ContentType)
= <span style="color: #a31515;">"application/x-www-form-urlencoded"</span></p>
        <p>
          <strong>[C#]</strong>
        </p>
        <p style="margin: 0px;">
            System.Net.<span style="color: #2b91af;">WebClient</span> VeriGonder
= <span style="color: blue;">new</span> System.Net.<span style="color: #2b91af;">WebClient</span>();
</p>
        <p style="margin-top: 0px;">
            VeriGonder.Headers[<span style="color: #2b91af;">HttpRequestHeader</span>.ContentType]
= <span style="color: #a31515;">"application/x-www-form-urlencoded"</span>;
</p>
        <p>
          <strong>VeriGonder</strong> adını verdiğimiz <strong>WebClient</strong> nesnemin hemen <strong>ContentType</strong> bilgisini
ayarlamam gerekiyor. Bunun için <strong>WebClient'ın</strong><strong>Headers</strong> dizisinden <strong> ContentType'ı</strong> bularak
form-urlencoded olarak değiştiriyorum. Böylece birazdan <strong>URLEncode</strong> tekniği
ile hazırladığımız verileri bu WebClient ile rahatlıkla sunucuya gönderebileceğiz.
</p>
        <p>
          <strong>[VB]</strong>
        </p>
        <p style="margin: 0px;">
        <span style="color: blue;">Dim</span> GonderilecekData <span style="color: blue;">As</span><span style="color: blue;">String</span> = <span style="color: #a31515;">"Gonderen="</span> &amp;
Browser.HttpUtility.UrlEncode(txtAdi.Text) &amp; <span style="color: #a31515;">"&amp;"</span></p>
        <p style="margin: 0px;">
        GonderilecekData &amp;= <span style="color: #a31515;">"Email="</span> &amp;
Browser.HttpUtility.UrlEncode(txtMaili.Text) &amp; <span style="color: #a31515;">"&amp;"</span></p>
        <p style="margin-top: 0px;">
        GonderilecekData &amp;= <span style="color: #a31515;">"Mesaj="</span> &amp;
Browser.HttpUtility.UrlEncode(txtMesaji.Text)
</p>
        <p>
          <strong>[C#]</strong>
        </p>
        <p style="margin: 0px;">
            <span style="color: blue;">string</span> GonderilecekData
= <span style="color: #a31515;">"Gonderen="</span> + System.Windows.Browser.<span style="color: #2b91af;">HttpUtility</span>.UrlEncode(txtAdi.Text)
+ <span style="color: #a31515;">"&amp;"</span>;
</p>
        <p style="margin: 0px;">
            GonderilecekData += <span style="color: #a31515;">"Email="</span> +
System.Windows.Browser.<span style="color: #2b91af;">HttpUtility</span>.UrlEncode(txtMaili.Text)
+ <span style="color: #a31515;">"&amp;"</span>;
</p>
        <p style="margin-top: 0px;">
            GonderilecekData += <span style="color: #a31515;">"Mesaj="</span> +
System.Windows.Browser.<span style="color: #2b91af;">HttpUtility</span>.UrlEncode(txtMesaji.Text);
</p>
        <p>
Kodumuz içerisinde hemen göndereceğimiz verileri <strong>Key/Value</strong> çiftleri
şeklinde birleştiriyoruz. Göndereceğimiz her verinin bir ismi ve tabi ki değeri olması
gerekiyor. Aslında yaptığımız şey normalde URL üzerinden göndereceğimiz veriyi <strong>URLEncode</strong> ile
aynı şekilde oluşturmak. Eğer göndereceğiniz verilerin sayısı çok ise performans açısından
standart <strong>String</strong> işlemleri yerine bir <strong>StringBuilder</strong> kullanmanızı
tavsiye ederim.
</p>
        <p>
          <strong>[VB]</strong>
        </p>
        <p style="margin: 0px;">
        <span style="color: blue;">AddHandler</span> VeriGonder.UploadStringCompleted, <span style="color: blue;">AddressOf</span> VeriGonder_UploadStringCompleted
</p>
        <p style="margin-top: 0px;">
        VeriGonder.UploadStringAsync(<span style="color: blue;">New</span> Uri(<span style="color: #a31515;">"http://localhost:49424/SilverlightApplication2Web/mailgonder.php"</span>,
UriKind.Absolute), <span style="color: #a31515;">"POST"</span>, GonderilecekData)
</p>
        <p>
          <strong>[C#]</strong>
        </p>
        <p style="margin: 0px;">
            VeriGonder.UploadStringCompleted
+= VeriGonder_UploadStringCompleted;
</p>
        <p style="margin-top: 0px;">
            VeriGonder.UploadStringAsync(<span style="color: blue;">new</span><span style="color: #2b91af;">Uri</span>(<span style="color: #a31515;">"http://localhost:49424/SilverlightApplication2Web/mailgonder.php"</span>, <span style="color: #2b91af;">UriKind</span>.Absolute), <span style="color: #a31515;">"POST"</span>,
GonderilecekData);
</p>
        <p>
Son olarak verimizi sunucuya göndermeden önce gönderme işlemi tamamlandığında çalıştırılmak
üzere <strong>VeriGonder</strong> nesnemizin <strong> UploadStrintCompleted</strong> event'ına
da bir event-handler bağlıyoruz. Artık verimizi sunucuya göndermeye hazır olduğumuza
göre hemen adresini vererek <strong>POST</strong> metodu ile veriyi yolculayabiliriz.
</p>
        <p>
          <strong>[VB]</strong>
        </p>
        <p style="margin: 0px;">
    <span style="color: blue;">Private</span><span style="color: blue;">Sub</span> VeriGonder_UploadStringCompleted(<span style="color: blue;">ByVal</span> sender <span style="color: blue;">As</span><span style="color: blue;">Object</span>, <span style="color: blue;">ByVal</span> e <span style="color: blue;">As</span> System.Net.UploadStringCompletedEventArgs)
</p>
        <p style="margin: 0px;">
        btnGonder.Content = <span style="color: #a31515;">"Tamam"</span></p>
        <p style="margin-top: 0px;">
    <span style="color: blue;">End</span><span style="color: blue;">Sub</span></p>
        <p>
          <strong>[C#]</strong>
        </p>
        <p style="margin: 0px;">
        <span style="color: blue;">private</span><span style="color: blue;">void</span> VeriGonder_UploadStringCompleted(<span style="color: blue;">object</span> sender,
System.Net.<span style="color: #2b91af;">UploadStringCompletedEventArgs</span> e)
</p>
        <p style="margin: 0px;">
        {
</p>
        <p style="margin: 0px;">
            btnGonder.Content = <span style="color: #a31515;">"Tamam"</span>;
</p>
        <p style="margin-top: 0px;">
        } 
</p>
        <p>
Veri gönderme işlemi tamamlandığında ekrandaki kontrolleri kaldırıp bir teşekkür mesajı
göstermek güzel olabilirdi. İşin o kısmını ben size bırakmış oliyim. Şimdilik <strong>UploadStringCompleted</strong> event'ında
düğmeye "Tamam" yazdırarak örneğimizi çalıştırabiliriz.
</p>
        <p style="color:maroon;">
          <strong>@ İşaret Sorunu!</strong>
        </p>
        <p>
Ufak bir sorunumuz var. <strong>Silverlight 2.0 Beta 2 </strong>ile beraber gelen
bu sorun ufak gibi gözükse de aslında epey önemli :) Yukarıdaki örneği çalıştırdığınızda
göreceksiniz ki herhangi bir TextBox içerisinde <strong>@</strong> işareti koyamıyorsunuz.
Bunun basit bir nedeni var, aslında <strong>AltGr</strong> tuşu ile oluşturduğunuz
hiçbir karakteri TextBox'lara yerleştiremeyeceksiniz. Neden mi? Bilmiyorum, bu
bir bug. Silverlight 2.0'ın Beta 2 sonrasında sürümlerinde bu hata giderilecek.
Şimdilik aşağıdaki gibi bir çözüm uygulayabiliriz.
</p>
        <p>
          <strong>[VB]</strong>
        </p>
        <p style="margin: 0px;">
    <span style="color: blue;">Dim</span> Oncekiler(1) <span style="color: blue;">As</span><span style="color: blue;">Integer</span></p>
        <p style="margin: 0px;">
 
</p>
        <p style="margin: 0px;">
    <span style="color: blue;">Private</span><span style="color: blue;">Sub</span> txtMaili_KeyDown(<span style="color: blue;">ByVal</span> sender <span style="color: blue;">As</span><span style="color: blue;">Object</span>, <span style="color: blue;">ByVal</span> e <span style="color: blue;">As</span> System.Windows.Input.KeyEventArgs) <span style="color: blue;">Handles</span> txtMaili.KeyDown
</p>
        <p style="margin: 0px;">
        <span style="color: blue;">If</span> e.PlatformKeyCode
= 81 <span style="color: blue;">Then</span></p>
        <p style="margin: 0px;">
            <span style="color: blue;">If</span> Oncekiler(0)
= 17 <span style="color: blue;">And</span> Oncekiler(1) = 18 <span style="color: blue;">Then</span></p>
        <p style="margin: 0px;">
                txtMaili.Text
&amp;= <span style="color: #a31515;">"@"</span></p>
        <p style="margin: 0px;">
                txtMaili.SelectionStart
= txtMaili.Text.Length
</p>
        <p style="margin: 0px;">
            <span style="color: blue;">End</span><span style="color: blue;">If</span></p>
        <p style="margin: 0px;">
        <span style="color: blue;">End</span><span style="color: blue;">If</span></p>
        <p style="margin: 0px;">
        Oncekiler(0) = Oncekiler(1)
</p>
        <p style="margin: 0px;">
        Oncekiler(1) = e.PlatformKeyCode
</p>
        <p style="margin-top: 0px;">
    <span style="color: blue;">End</span><span style="color: blue;">Sub</span></p>
        <p>
          <strong>[C#]</strong>
        </p>
        <p style="margin: 0px;">
        <span style="color: blue;">int</span>[] Oncekiler
= <span style="color: blue;">new</span><span style="color: blue;">int</span>[2];
</p>
        <p style="margin: 0px;">
 
</p>
        <p style="margin: 0px;">
        <span style="color: blue;">private</span><span style="color: blue;">void</span> txtMaili_KeyDown(<span style="color: blue;">object</span> sender,
System.Windows.Input.<span style="color: #2b91af;">KeyEventArgs</span> e)
</p>
        <p style="margin: 0px;">
        {
</p>
        <p style="margin: 0px;">
            <span style="color: blue;">if</span> (e.PlatformKeyCode
== 81)
</p>
        <p style="margin: 0px;">
            {
</p>
        <p style="margin: 0px;">
                <span style="color: blue;">if</span> (Oncekiler[0]
== 17 &amp; Oncekiler[1] == 18)
</p>
        <p style="margin: 0px;">
                {
</p>
        <p style="margin: 0px;">
                   
txtMaili.Text += <span style="color: #a31515;">"@"</span>;
</p>
        <p style="margin: 0px;">
                   
txtMaili.SelectionStart = txtMaili.Text.Length;
</p>
        <p style="margin: 0px;">
                }
</p>
        <p style="margin: 0px;">
            }
</p>
        <p style="margin: 0px;">
            Oncekiler[0] = Oncekiler[1];
</p>
        <p style="margin: 0px;">
            Oncekiler[1] = e.PlatformKeyCode;
</p>
        <p style="margin-top: 0px;">
        } 
</p>
        <p>
İlk önce uygulamaya çalıştığımız mantığı kavrayalım. <strong>txtMail</strong> adındaki <strong>textBox</strong> içerisinde
herhangi bir tuşa basıldığında yukarıdaki gibi <strong>KeyDown</strong> event'ı
çalışacaktır. Bu event'a baktığımızda klavyede <strong>AltGr</strong> tuşuna basıldığında
sırası ile iki tuşa basılmış gibi sistemin 17 ve sonrasonda da 18 numaralı PlatformAnahtarları'nı
döndürdüğünü görebiliriz. Bu tuşların Macintosh dahil tüm sistemlerdeki <strong>PlatformKeyCode</strong> adında
anahtarları vardır ve bu değerler sürekli aynıdır. Normalde biz @ işaretini koyabilmek
için AltGr'ye bastıkdan sonra bir de Q harfine basarız. O zaman kontrol etmemiz
gereken durum şu; Q harfine basıldıysa acaba bir önceki basılan tuş <strong>AltGr</strong> miydi?
Eğer öğleyse bana bir <strong>@</strong> işareti lazım. İşte kodumuz da bu kontrolü
yapıyor. Sürekli olarak basılan son iki tuşu <strong>Oncekiler</strong> adındaki dizimizde
saklıyor ve her tuşa basıldığında <strong>KeyDown</strong> içerisinde eğer Q harfine
basılmış ise son basılan iki tuşun <strong> KeyCode'larının</strong> da 17 ve
18 olup olmadığını kontrol ediyoruz. Eğer durum buysa txtMaili <strong>TextBox'ı</strong> içerisine
bir @ işareti ekleyip imleci metnin en sonuna gönderiyoruz.
</p>
        <p style="color:maroon;">
          <strong>Sonuç</strong>
        </p>
        <p>
Makalemizde kullandığımız teknik aslında web programcılığının en ilkel zamanlarından
bu güne kadar gelen ve yapı taşı diyebileceğimiz POST metodunun ta kendisi. Bu çerçevede
sunucu taraflı programlama sistemlerinin hepsi bu şekilde veri trafiğine açık olduğu
için aynı teknikler ile Silverlight'ı sunucu tarafı ile rahatlıkla konuşturabilir
ve ister sunucunun işletim sistemi olsun, ister kullanılan teknoloji olsun her konuda
tam bağımsızlığın tadını çıkartabilirsiniz.
</p>
        <p>
Hepinize kolay gelsin.
</p>
        <img width="0" height="0" src="http://daron.yondem.com/tr/aggbug.ashx?id=b133a50e-9d51-47bc-a552-fd2dcf871c00" />
      </body>
      <title>Silverlight 2.0 Beta 2 ve PHP ile mailform uygulaması</title>
      <guid isPermaLink="false">http://daron.yondem.com/tr/PermaLink.aspx?guid=b133a50e-9d51-47bc-a552-fd2dcf871c00</guid>
      <link>http://daron.yondem.com/tr/PermaLink.aspx?guid=b133a50e-9d51-47bc-a552-fd2dcf871c00</link>
      <pubDate>Thu, 17 Jul 2008 11:43:17 GMT</pubDate>
      <description>&lt;p&gt;
İster PHP olsun ister farklı sunucu taraflı programlama dilleri olsun hepsi de &amp;quot;adı
üzerinde&amp;quot; sunucu tarafında çalışıyorlar. Biz ise Silverlight tarafında tamamen
istemcide çalışıyor. Bu çerçevede Silverlight&amp;#39;ın tamamen sunucudan bağımsız olduğunu
düşünürsek aslında sunucu ile belirli standartları yakaladığımız sürece istediğimiz
sunucu taraflı programlama altyapısı ile entegrasyon sağlayabiliriz. Bu standartlar
WSDL kuralları çerçevesinde hazırlanmış bir web servisi olabileceği gibi bazen çok
basit bir POST işlemi bile olabilir. Bu yazımda &lt;strong&gt;Silverlight 2.0 Beta 2&lt;/strong&gt; ile
beraber sunucu tarafında bir PHP kodu kullanarak mail gönderim işlemi yapacağız. Hazırladığımız
Silverlight 2.0 uygulamasının XAP dosyasını sunucuya atmamız uygulamamızın çalışması
için yeterli olacaktır.
&lt;/p&gt;
&lt;p style="color:maroon;"&gt;
&lt;strong&gt;Önce PHP tarafını çözelim!&lt;/strong&gt;
&lt;/p&gt;
&lt;p&gt;
PHP tarafında çok detaya girmeyeceğiz. Yapacağımız şey basit bir şekilde sayfaya POST
ile gönderilen değişkenleri alıp uygun bir mail mesaj stringi haline çevirdikten sonra
mail olarak istediğimiz kullanıcıya göndermek olacak.
&lt;/p&gt;
&lt;p style="margin: 0px; color: #000080;"&gt;
&amp;#65279;&amp;lt;?php 
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
$senderName = &lt;span style="color: #808000;"&gt;$_POST&lt;/span&gt;[&lt;span style="color: #a31515;"&gt;'Gonderen'&lt;/span&gt;]; 
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
$senderEmail = &lt;span style="color: #808000;"&gt;$_POST&lt;/span&gt;[&lt;span style="color: #a31515;"&gt;'Email'&lt;/span&gt;]; 
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
$emailMessage = &lt;span style="color: #808000;"&gt;$_POST&lt;/span&gt;[&lt;span style="color: #a31515;"&gt;'Mesaj'&lt;/span&gt;]; 
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
$recipient = &lt;span style="color: #a31515;"&gt;"alici@domain.com"&lt;/span&gt;; 
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
$subject = &lt;span style="color: #a31515;"&gt;"Mesaj Konusu"&lt;/span&gt;; 
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
$headers = &lt;span style="color: #a31515;"&gt;"From: $Email"&lt;/span&gt;; 
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
$message = &lt;span style="color: #a31515;"&gt;"Kimden: $Gonderen\nEposta Adresi: $Email\n\n
Mesaj: $Mesaj"&lt;/span&gt;; 
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
$message = &lt;span style="color: #008000"&gt;stripslashes&lt;/span&gt;($message); 
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&lt;span style="color: #008000"&gt;mail&lt;/span&gt;($recipient, $subject, $message, $headers) 
&lt;/p&gt;
&lt;p style="margin-top: 0px;color: #000080;"&gt;
?&amp;gt; 
&lt;/p&gt;
&lt;p&gt;
Örneğimize devam ederken ufak bir uyarıda bulunmam gerek. Kesinlikle yukarıdaki gibi
bir PHP dosyasını sitenize bu haliyle bırakmayın. Şu an yukarıdaki dosyada ne post
eden arkadaşın kimliği, ne sender&amp;#39;ın agent tipi hiçbir şey kontrol edilmiyor.
Güvenlik açısından kesinlikle bu kodun geliştirilmesi gerek aksi halde önüne gelen
buraya bilgileri POST ederek size milyonlarca mail yollayabilir.
&lt;/p&gt;
&lt;p style="color:maroon;"&gt;
&lt;strong&gt;Uygulamamızın tasarımını yapalım&lt;/strong&gt;
&lt;/p&gt;
&lt;p&gt;
Yine çok basit bir mailform hazırlayacağız. Blend 2.5 içerisinden Silverlight sayfamıza
toplam üç adet TextBox ve bir de Button koyuyoruz. Site ziyaretçileri isimlerini,
maillerini ve mesajlarını yazarak düğmeye basıp gize gönderebilecekler. Oluşturduğumuz
uygulamanın XAML kodunu aşağıda inceleyebilirsiniz.
&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;UserControl&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;="SilverlightApplication2.Page"&lt;/span&gt;
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;&amp;nbsp; &lt;span style="color: red;"&gt; xmlns&lt;/span&gt;&lt;span style="color: blue;"&gt;="http://schemas.microsoft.com/winfx/2006/xaml/presentation"&lt;/span&gt; 
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;&amp;nbsp; &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;="http://schemas.microsoft.com/winfx/2006/xaml"&lt;/span&gt; 
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;&amp;nbsp; &lt;span style="color: red;"&gt; Width&lt;/span&gt;&lt;span style="color: blue;"&gt;="400"&lt;/span&gt;&lt;span style="color: red;"&gt; Height&lt;/span&gt;&lt;span style="color: blue;"&gt;="300"&amp;gt;&lt;/span&gt;
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&lt;span style="color: #a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &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: red;"&gt; x&lt;/span&gt;&lt;span style="color: blue;"&gt;:&lt;/span&gt;&lt;span style="color: red;"&gt;Name&lt;/span&gt;&lt;span style="color: blue;"&gt;="LayoutRoot"&lt;/span&gt;&lt;span style="color: red;"&gt; Background&lt;/span&gt;&lt;span style="color: blue;"&gt;="White"&amp;gt;&lt;/span&gt;
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&lt;span style="color: #a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color: blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515;"&gt;&lt;strong&gt;TextBox&lt;/strong&gt;&lt;/span&gt;&lt;span style="color: red;"&gt; Height&lt;/span&gt;&lt;span style="color: blue;"&gt;="32"&lt;/span&gt;&lt;span style="color: red;"&gt; Margin&lt;/span&gt;&lt;span style="color: blue;"&gt;="96,42,74,0"&lt;/span&gt;&lt;span style="color: red;"&gt; VerticalAlignment&lt;/span&gt;&lt;span style="color: blue;"&gt;="Top"&lt;/span&gt;&lt;span style="color: red;"&gt; Text&lt;/span&gt;&lt;span style="color: blue;"&gt;="Ad&amp;#305;n&amp;#305;z"&lt;/span&gt;&lt;span style="color: red;"&gt; TextWrapping&lt;/span&gt;&lt;span style="color: blue;"&gt;="Wrap"&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;Name&lt;/span&gt;&lt;span style="color: blue;"&gt;="&lt;strong&gt;txtAdi&lt;/strong&gt;"/&amp;gt;&lt;/span&gt;
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&lt;span style="color: #a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color: blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515;"&gt;&lt;strong&gt;TextBox&lt;/strong&gt;&lt;/span&gt;&lt;span style="color: red;"&gt; Height&lt;/span&gt;&lt;span style="color: blue;"&gt;="29"&lt;/span&gt;&lt;span style="color: red;"&gt; Margin&lt;/span&gt;&lt;span style="color: blue;"&gt;="96,88,74,0"&lt;/span&gt;&lt;span style="color: red;"&gt; VerticalAlignment&lt;/span&gt;&lt;span style="color: blue;"&gt;="Top"&lt;/span&gt;&lt;span style="color: red;"&gt; Text&lt;/span&gt;&lt;span style="color: blue;"&gt;="Mailiniz"&lt;/span&gt;&lt;span style="color: red;"&gt; TextWrapping&lt;/span&gt;&lt;span style="color: blue;"&gt;="Wrap"&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;Name&lt;/span&gt;&lt;span style="color: blue;"&gt;="&lt;strong&gt;txtMaili&lt;/strong&gt;"/&amp;gt;&lt;/span&gt;
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&lt;span style="color: #a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color: blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515;"&gt;&lt;strong&gt;TextBox&lt;/strong&gt;&lt;/span&gt;&lt;span style="color: red;"&gt; Margin&lt;/span&gt;&lt;span style="color: blue;"&gt;="96,132,74,81"&lt;/span&gt;&lt;span style="color: red;"&gt; Text&lt;/span&gt;&lt;span style="color: blue;"&gt;="Mesaj&amp;#305;n&amp;#305;z"&lt;/span&gt;&lt;span style="color: red;"&gt; TextWrapping&lt;/span&gt;&lt;span style="color: blue;"&gt;="Wrap"&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;Name&lt;/span&gt;&lt;span style="color: blue;"&gt;="&lt;strong&gt;txtMesaji&lt;/strong&gt;"/&amp;gt;&lt;/span&gt;
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&lt;span style="color: #a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color: blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515;"&gt;&lt;strong&gt;Button&lt;/strong&gt;&lt;/span&gt;&lt;span style="color: red;"&gt; Height&lt;/span&gt;&lt;span style="color: blue;"&gt;="32"&lt;/span&gt;&lt;span style="color: red;"&gt; HorizontalAlignment&lt;/span&gt;&lt;span style="color: blue;"&gt;="Stretch"&lt;/span&gt;&lt;span style="color: red;"&gt; Margin&lt;/span&gt;&lt;span style="color: blue;"&gt;="180,0,146,31"&lt;/span&gt;&lt;span style="color: red;"&gt; VerticalAlignment&lt;/span&gt;&lt;span style="color: blue;"&gt;="Bottom"&lt;/span&gt;&lt;span style="color: red;"&gt; Content&lt;/span&gt;&lt;span style="color: blue;"&gt;="G&amp;#246;nder"&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;Name&lt;/span&gt;&lt;span style="color: blue;"&gt;="&lt;strong&gt;btnGonder&lt;/strong&gt;"/&amp;gt;&lt;/span&gt;
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&lt;span style="color: #a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &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-top: 0px;"&gt;
&lt;span style="color: blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515;"&gt;UserControl&lt;/span&gt;&lt;span style="color: blue;"&gt;&amp;gt;&lt;/span&gt;
&lt;/p&gt;
&lt;p style="color:maroon;"&gt;
&lt;strong&gt;Kodlamaya geçelim&lt;/strong&gt;
&lt;/p&gt;
&lt;p&gt;
Uygulamamızın kod kısmında bir WebClient nesnesi kullanacağız. WebClient nesnemize
sahnedeki tüm bilgileri bir String olarak vererek POST metodu ile bilgileri kendisine
parametre olarak vereceğimiz bir adrese göndermesini isteyeceğiz. 
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;[VB]&lt;/strong&gt;
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;Dim&lt;/span&gt; VeriGonder &lt;span style="color: blue;"&gt;As&lt;/span&gt; &lt;span style="color: blue;"&gt;New&lt;/span&gt; System.Net.WebClient
&lt;/p&gt;
&lt;p style="margin-top: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; VeriGonder.Headers(HttpRequestHeader.ContentType)
= &lt;span style="color: #a31515;"&gt;"application/x-www-form-urlencoded"&lt;/span&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;[C#]&lt;/strong&gt;
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; System.Net.&lt;span style="color: #2b91af;"&gt;WebClient&lt;/span&gt; VeriGonder
= &lt;span style="color: blue;"&gt;new&lt;/span&gt; System.Net.&lt;span style="color: #2b91af;"&gt;WebClient&lt;/span&gt;();
&lt;/p&gt;
&lt;p style="margin-top: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; VeriGonder.Headers[&lt;span style="color: #2b91af;"&gt;HttpRequestHeader&lt;/span&gt;.ContentType]
= &lt;span style="color: #a31515;"&gt;"application/x-www-form-urlencoded"&lt;/span&gt;;
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;VeriGonder&lt;/strong&gt; adını verdiğimiz &lt;strong&gt;WebClient&lt;/strong&gt; nesnemin hemen &lt;strong&gt;ContentType&lt;/strong&gt; bilgisini
ayarlamam gerekiyor. Bunun için &lt;strong&gt;WebClient&amp;#39;ın&lt;/strong&gt; &lt;strong&gt;Headers&lt;/strong&gt; dizisinden &lt;strong&gt; ContentType&amp;#39;ı&lt;/strong&gt; bularak
form-urlencoded olarak değiştiriyorum. Böylece birazdan &lt;strong&gt;URLEncode&lt;/strong&gt; tekniği
ile hazırladığımız verileri bu WebClient ile rahatlıkla sunucuya gönderebileceğiz.
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;[VB]&lt;/strong&gt;
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;Dim&lt;/span&gt; GonderilecekData &lt;span style="color: blue;"&gt;As&lt;/span&gt; &lt;span style="color: blue;"&gt;String&lt;/span&gt; = &lt;span style="color: #a31515;"&gt;"Gonderen="&lt;/span&gt; &amp;amp;
Browser.HttpUtility.UrlEncode(txtAdi.Text) &amp;amp; &lt;span style="color: #a31515;"&gt;"&amp;amp;"&lt;/span&gt;
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; GonderilecekData &amp;amp;= &lt;span style="color: #a31515;"&gt;"Email="&lt;/span&gt; &amp;amp;
Browser.HttpUtility.UrlEncode(txtMaili.Text) &amp;amp; &lt;span style="color: #a31515;"&gt;"&amp;amp;"&lt;/span&gt;
&lt;/p&gt;
&lt;p style="margin-top: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; GonderilecekData &amp;amp;= &lt;span style="color: #a31515;"&gt;"Mesaj="&lt;/span&gt; &amp;amp;
Browser.HttpUtility.UrlEncode(txtMesaji.Text)
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;[C#]&lt;/strong&gt;
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;string&lt;/span&gt; GonderilecekData
= &lt;span style="color: #a31515;"&gt;"Gonderen="&lt;/span&gt; + System.Windows.Browser.&lt;span style="color: #2b91af;"&gt;HttpUtility&lt;/span&gt;.UrlEncode(txtAdi.Text)
+ &lt;span style="color: #a31515;"&gt;"&amp;amp;"&lt;/span&gt;;
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; GonderilecekData += &lt;span style="color: #a31515;"&gt;"Email="&lt;/span&gt; +
System.Windows.Browser.&lt;span style="color: #2b91af;"&gt;HttpUtility&lt;/span&gt;.UrlEncode(txtMaili.Text)
+ &lt;span style="color: #a31515;"&gt;"&amp;amp;"&lt;/span&gt;;
&lt;/p&gt;
&lt;p style="margin-top: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; GonderilecekData += &lt;span style="color: #a31515;"&gt;"Mesaj="&lt;/span&gt; +
System.Windows.Browser.&lt;span style="color: #2b91af;"&gt;HttpUtility&lt;/span&gt;.UrlEncode(txtMesaji.Text);
&lt;/p&gt;
&lt;p&gt;
Kodumuz içerisinde hemen göndereceğimiz verileri &lt;strong&gt;Key/Value&lt;/strong&gt; çiftleri
şeklinde birleştiriyoruz. Göndereceğimiz her verinin bir ismi ve tabi ki değeri olması
gerekiyor. Aslında yaptığımız şey normalde URL üzerinden göndereceğimiz veriyi &lt;strong&gt;URLEncode&lt;/strong&gt; ile
aynı şekilde oluşturmak. Eğer göndereceğiniz verilerin sayısı çok ise performans açısından
standart &lt;strong&gt;String&lt;/strong&gt; işlemleri yerine bir &lt;strong&gt;StringBuilder&lt;/strong&gt; kullanmanızı
tavsiye ederim.
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;[VB]&lt;/strong&gt;
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;AddHandler&lt;/span&gt; VeriGonder.UploadStringCompleted, &lt;span style="color: blue;"&gt;AddressOf&lt;/span&gt; VeriGonder_UploadStringCompleted
&lt;/p&gt;
&lt;p style="margin-top: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; VeriGonder.UploadStringAsync(&lt;span style="color: blue;"&gt;New&lt;/span&gt; Uri(&lt;span style="color: #a31515;"&gt;"http://localhost:49424/SilverlightApplication2Web/mailgonder.php"&lt;/span&gt;,
UriKind.Absolute), &lt;span style="color: #a31515;"&gt;"POST"&lt;/span&gt;, GonderilecekData)
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;[C#]&lt;/strong&gt;
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; VeriGonder.UploadStringCompleted
+= VeriGonder_UploadStringCompleted;
&lt;/p&gt;
&lt;p style="margin-top: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; VeriGonder.UploadStringAsync(&lt;span style="color: blue;"&gt;new&lt;/span&gt; &lt;span style="color: #2b91af;"&gt;Uri&lt;/span&gt;(&lt;span style="color: #a31515;"&gt;"http://localhost:49424/SilverlightApplication2Web/mailgonder.php"&lt;/span&gt;, &lt;span style="color: #2b91af;"&gt;UriKind&lt;/span&gt;.Absolute), &lt;span style="color: #a31515;"&gt;"POST"&lt;/span&gt;,
GonderilecekData);
&lt;/p&gt;
&lt;p&gt;
Son olarak verimizi sunucuya göndermeden önce gönderme işlemi tamamlandığında çalıştırılmak
üzere &lt;strong&gt;VeriGonder&lt;/strong&gt; nesnemizin &lt;strong&gt; UploadStrintCompleted&lt;/strong&gt; event&amp;#39;ına
da bir event-handler bağlıyoruz. Artık verimizi sunucuya göndermeye hazır olduğumuza
göre hemen adresini vererek &lt;strong&gt;POST&lt;/strong&gt; metodu ile veriyi yolculayabiliriz.
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;[VB]&lt;/strong&gt;
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;Private&lt;/span&gt; &lt;span style="color: blue;"&gt;Sub&lt;/span&gt; VeriGonder_UploadStringCompleted(&lt;span style="color: blue;"&gt;ByVal&lt;/span&gt; sender &lt;span style="color: blue;"&gt;As&lt;/span&gt; &lt;span style="color: blue;"&gt;Object&lt;/span&gt;, &lt;span style="color: blue;"&gt;ByVal&lt;/span&gt; e &lt;span style="color: blue;"&gt;As&lt;/span&gt; System.Net.UploadStringCompletedEventArgs)
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; btnGonder.Content = &lt;span style="color: #a31515;"&gt;"Tamam"&lt;/span&gt;
&lt;/p&gt;
&lt;p style="margin-top: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;End&lt;/span&gt; &lt;span style="color: blue;"&gt;Sub&lt;/span&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;[C#]&lt;/strong&gt;
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;private&lt;/span&gt; &lt;span style="color: blue;"&gt;void&lt;/span&gt; VeriGonder_UploadStringCompleted(&lt;span style="color: blue;"&gt;object&lt;/span&gt; sender,
System.Net.&lt;span style="color: #2b91af;"&gt;UploadStringCompletedEventArgs&lt;/span&gt; e)
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; {
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; btnGonder.Content = &lt;span style="color: #a31515;"&gt;"Tamam"&lt;/span&gt;;
&lt;/p&gt;
&lt;p style="margin-top: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; } 
&lt;/p&gt;
&lt;p&gt;
Veri gönderme işlemi tamamlandığında ekrandaki kontrolleri kaldırıp bir teşekkür mesajı
göstermek güzel olabilirdi. İşin o kısmını ben size bırakmış oliyim. Şimdilik &lt;strong&gt;UploadStringCompleted&lt;/strong&gt; event&amp;#39;ında
düğmeye &amp;quot;Tamam&amp;quot; yazdırarak örneğimizi çalıştırabiliriz.
&lt;/p&gt;
&lt;p style="color:maroon;"&gt;
&lt;strong&gt;@ İşaret Sorunu!&lt;/strong&gt;
&lt;/p&gt;
&lt;p&gt;
Ufak bir sorunumuz var. &lt;strong&gt;Silverlight 2.0 Beta 2 &lt;/strong&gt;ile beraber gelen
bu sorun ufak gibi gözükse de aslında epey önemli :) Yukarıdaki örneği çalıştırdığınızda
göreceksiniz ki herhangi bir TextBox içerisinde &lt;strong&gt;@&lt;/strong&gt; işareti koyamıyorsunuz.
Bunun basit bir nedeni var, aslında &lt;strong&gt;AltGr&lt;/strong&gt; tuşu ile oluşturduğunuz
hiçbir karakteri TextBox&amp;#39;lara yerleştiremeyeceksiniz. Neden mi? Bilmiyorum, bu
bir bug. Silverlight 2.0&amp;#39;ın Beta 2 sonrasında sürümlerinde bu hata giderilecek.
Şimdilik aşağıdaki gibi bir çözüm uygulayabiliriz.
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;[VB]&lt;/strong&gt;
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;Dim&lt;/span&gt; Oncekiler(1) &lt;span style="color: blue;"&gt;As&lt;/span&gt; &lt;span style="color: blue;"&gt;Integer&lt;/span&gt;
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;Private&lt;/span&gt; &lt;span style="color: blue;"&gt;Sub&lt;/span&gt; txtMaili_KeyDown(&lt;span style="color: blue;"&gt;ByVal&lt;/span&gt; sender &lt;span style="color: blue;"&gt;As&lt;/span&gt; &lt;span style="color: blue;"&gt;Object&lt;/span&gt;, &lt;span style="color: blue;"&gt;ByVal&lt;/span&gt; e &lt;span style="color: blue;"&gt;As&lt;/span&gt; System.Windows.Input.KeyEventArgs) &lt;span style="color: blue;"&gt;Handles&lt;/span&gt; txtMaili.KeyDown
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;If&lt;/span&gt; e.PlatformKeyCode
= 81 &lt;span style="color: blue;"&gt;Then&lt;/span&gt;
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;If&lt;/span&gt; Oncekiler(0)
= 17 &lt;span style="color: blue;"&gt;And&lt;/span&gt; Oncekiler(1) = 18 &lt;span style="color: blue;"&gt;Then&lt;/span&gt;
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; txtMaili.Text
&amp;amp;= &lt;span style="color: #a31515;"&gt;"@"&lt;/span&gt;
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; txtMaili.SelectionStart
= txtMaili.Text.Length
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;End&lt;/span&gt; &lt;span style="color: blue;"&gt;If&lt;/span&gt;
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;End&lt;/span&gt; &lt;span style="color: blue;"&gt;If&lt;/span&gt;
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; Oncekiler(0) = Oncekiler(1)
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; Oncekiler(1) = e.PlatformKeyCode
&lt;/p&gt;
&lt;p style="margin-top: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;End&lt;/span&gt; &lt;span style="color: blue;"&gt;Sub&lt;/span&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;[C#]&lt;/strong&gt;
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;int&lt;/span&gt;[] Oncekiler
= &lt;span style="color: blue;"&gt;new&lt;/span&gt; &lt;span style="color: blue;"&gt;int&lt;/span&gt;[2];
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;private&lt;/span&gt; &lt;span style="color: blue;"&gt;void&lt;/span&gt; txtMaili_KeyDown(&lt;span style="color: blue;"&gt;object&lt;/span&gt; sender,
System.Windows.Input.&lt;span style="color: #2b91af;"&gt;KeyEventArgs&lt;/span&gt; e)
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; {
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;if&lt;/span&gt; (e.PlatformKeyCode
== 81)
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; {
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;if&lt;/span&gt; (Oncekiler[0]
== 17 &amp;amp; Oncekiler[1] == 18)
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; {
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;
txtMaili.Text += &lt;span style="color: #a31515;"&gt;"@"&lt;/span&gt;;
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;
txtMaili.SelectionStart = txtMaili.Text.Length;
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; Oncekiler[0] = Oncekiler[1];
&lt;/p&gt;
&lt;p style="margin: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; Oncekiler[1] = e.PlatformKeyCode;
&lt;/p&gt;
&lt;p style="margin-top: 0px;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; } 
&lt;/p&gt;
&lt;p&gt;
İlk önce uygulamaya çalıştığımız mantığı kavrayalım. &lt;strong&gt;txtMail&lt;/strong&gt; adındaki &lt;strong&gt;textBox&lt;/strong&gt; içerisinde
herhangi bir tuşa basıldığında yukarıdaki gibi &lt;strong&gt;KeyDown&lt;/strong&gt; event&amp;#39;ı
çalışacaktır. Bu event&amp;#39;a baktığımızda klavyede &lt;strong&gt;AltGr&lt;/strong&gt; tuşuna basıldığında
sırası ile iki tuşa basılmış gibi sistemin 17 ve sonrasonda da 18 numaralı PlatformAnahtarları&amp;#39;nı
döndürdüğünü görebiliriz. Bu tuşların Macintosh dahil tüm sistemlerdeki &lt;strong&gt;PlatformKeyCode&lt;/strong&gt; adında
anahtarları vardır ve bu değerler sürekli aynıdır. Normalde biz @ işaretini koyabilmek
için AltGr&amp;#39;ye bastıkdan sonra bir de Q harfine basarız. O zaman kontrol etmemiz
gereken durum şu; Q harfine basıldıysa acaba bir önceki basılan tuş &lt;strong&gt;AltGr&lt;/strong&gt; miydi?
Eğer öğleyse bana bir &lt;strong&gt;@&lt;/strong&gt; işareti lazım. İşte kodumuz da bu kontrolü
yapıyor. Sürekli olarak basılan son iki tuşu &lt;strong&gt;Oncekiler&lt;/strong&gt; adındaki dizimizde
saklıyor ve her tuşa basıldığında &lt;strong&gt;KeyDown&lt;/strong&gt; içerisinde eğer Q harfine
basılmış ise son basılan iki tuşun &lt;strong&gt; KeyCode&amp;#39;larının&lt;/strong&gt; da 17 ve
18 olup olmadığını kontrol ediyoruz. Eğer durum buysa txtMaili &lt;strong&gt;TextBox&amp;#39;ı&lt;/strong&gt; içerisine
bir @ işareti ekleyip imleci metnin en sonuna gönderiyoruz.
&lt;/p&gt;
&lt;p style="color:maroon;"&gt;
&lt;strong&gt;Sonuç&lt;/strong&gt;
&lt;/p&gt;
&lt;p&gt;
Makalemizde kullandığımız teknik aslında web programcılığının en ilkel zamanlarından
bu güne kadar gelen ve yapı taşı diyebileceğimiz POST metodunun ta kendisi. Bu çerçevede
sunucu taraflı programlama sistemlerinin hepsi bu şekilde veri trafiğine açık olduğu
için aynı teknikler ile Silverlight&amp;#39;ı sunucu tarafı ile rahatlıkla konuşturabilir
ve ister sunucunun işletim sistemi olsun, ister kullanılan teknoloji olsun her konuda
tam bağımsızlığın tadını çıkartabilirsiniz.
&lt;/p&gt;
&lt;p&gt;
Hepinize kolay gelsin.
&lt;/p&gt;
&lt;img width="0" height="0" src="http://daron.yondem.com/tr/aggbug.ashx?id=b133a50e-9d51-47bc-a552-fd2dcf871c00" /&gt;</description>
      <comments>http://daron.yondem.com/tr/CommentView.aspx?guid=b133a50e-9d51-47bc-a552-fd2dcf871c00</comments>
      <category>Silverlight 2.0</category>
    </item>
    <item>
      <trackback:ping>http://daron.yondem.com/tr/Trackback.aspx?guid=11907d24-0da8-4f9c-8f86-6c0dce6b24e8</trackback:ping>
      <pingback:server>http://daron.yondem.com/tr/pingback.aspx</pingback:server>
      <pingback:target>http://daron.yondem.com/tr/PermaLink.aspx?guid=11907d24-0da8-4f9c-8f86-6c0dce6b24e8</pingback:target>
      <dc:creator>Your DisplayName here!</dc:creator>
      <wfw:comment>http://daron.yondem.com/tr/CommentView.aspx?guid=11907d24-0da8-4f9c-8f86-6c0dce6b24e8</wfw:comment>
      <wfw:commentRss>http://daron.yondem.com/tr/SyndicationService.asmx/GetEntryCommentsRss?guid=11907d24-0da8-4f9c-8f86-6c0dce6b24e8</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
Expression Web 2 ile beraber gelen belki de en ilginç ve güzel yeniliklerden biri
de PHP desteğinin gelmesi. Microsoft'un Windows Server 2008 ile beraber gelen
"<em>PHP Windows sunucularda artık Apache'den daha hızlı çalışıyor</em>"
iddiası çerçevesinde böyle bir gelişme aslında çok da garip değil. Yazılımcılar olarak
baktığımız bu durum tabi ki bizim için çok faydalı, tek bir Expression Web ile h<strong>em
ASP.NET hem PHP</strong> siteleri "color coding" dahil düzenleyebiliyor
ve çalıştırabiliyor olmamız müthiş bir avantaj. Peki tüm bunları nasıl yapacağız?
</p>
        <p>
Expression Web 2 ile beraber <strong>Expression Development Server</strong> geliyor.
Bu yapı bizim Visual Studio içerisinde alıştığımız ASP.NET Development Server'a
çok benziyor ve sistemde herhangi bir şekilde IIS yüklü olmasa da siteleri çalıştırabilmenizi
sağlıyor. Expression Development Server'ın tabi ki PHP desteği de var fakat sisteminizde
PHP'nin yüklü olması gerek. Gelin şimdi tüm ayarları ve yüklemeleri nasıl yapabileceğimize
bir göz atalım.
</p>
        <ul>
          <li>
İlk olarak <a href="http://us3.php.net/get/php-5.2.5-Win32.zip/from/a/mirror">http://us3.php.net/get/php-5.2.5-Win32.zip/from/a/mirror</a> adresinden
PHP 5'i bilgisayarınıza indirerek kaydedin. İndirdiğiniz ZIP dosyası içerisindeki
herşeyi sisteminizde herhangi bir klasöre boşaltın. Benim tavsiyem  <strong>C:\PHP</strong> gibi
bir yerlere koymanız olacaktır.</li>
          <li>
Bir sonraki adımda ZIP dosyasından çıkardığınız dosyaların içinden php.ini-recommended
adındaki dosyanın bir kopyasını alarak adını da <strong>PHP.ini</strong> olarak değiştirmeniz
gerekiyor. Bu dosyayı ASP.NET'teni Web.Config'e benzetebiliriz.</li>
          <li>
Expression Web içerisinde herhangi bir boş site yaratıp içerisinde bir PHP dosyası
oluşturduktan sonra bir defalığına PHP motorunu Expression Web'e göstermeniz gerekiyor.
Bunun için program içerisinde "<strong>Tools / Application Options</strong>"
menüsünden ilerleyerek "<strong>Path to PHP Executable</strong>" ayarını
değiştirmeniz gerekiyor. Örneğin şöyle bir ayar uygun olacaktır: "<strong>C:\PHP\php-cgi.exe</strong>"</li>
        </ul>
        <p>
Hepinize kolay gelsin ;)
</p>
        <img width="0" height="0" src="http://daron.yondem.com/tr/aggbug.ashx?id=11907d24-0da8-4f9c-8f86-6c0dce6b24e8" />
      </body>
      <title>Expression Web 2 ve PHP desteğine dair ayarlar.</title>
      <guid isPermaLink="false">http://daron.yondem.com/tr/PermaLink.aspx?guid=11907d24-0da8-4f9c-8f86-6c0dce6b24e8</guid>
      <link>http://daron.yondem.com/tr/PermaLink.aspx?guid=11907d24-0da8-4f9c-8f86-6c0dce6b24e8</link>
      <pubDate>Wed, 16 Jul 2008 09:15:47 GMT</pubDate>
      <description>&lt;p&gt;
Expression Web 2 ile beraber gelen belki de en ilginç ve güzel yeniliklerden biri
de PHP desteğinin gelmesi. Microsoft&amp;#39;un Windows Server 2008 ile beraber gelen
&amp;quot;&lt;em&gt;PHP Windows sunucularda artık Apache&amp;#39;den daha hızlı çalışıyor&lt;/em&gt;&amp;quot;
iddiası çerçevesinde böyle bir gelişme aslında çok da garip değil. Yazılımcılar olarak
baktığımız bu durum tabi ki bizim için çok faydalı, tek bir Expression Web ile h&lt;strong&gt;em
ASP.NET hem PHP&lt;/strong&gt; siteleri &amp;quot;color coding&amp;quot; dahil düzenleyebiliyor
ve çalıştırabiliyor olmamız müthiş bir avantaj. Peki tüm bunları nasıl yapacağız?
&lt;/p&gt;
&lt;p&gt;
Expression Web 2 ile beraber &lt;strong&gt;Expression Development Server&lt;/strong&gt; geliyor.
Bu yapı bizim Visual Studio içerisinde alıştığımız ASP.NET Development Server&amp;#39;a
çok benziyor ve sistemde herhangi bir şekilde IIS yüklü olmasa da siteleri çalıştırabilmenizi
sağlıyor. Expression Development Server&amp;#39;ın tabi ki PHP desteği de var fakat sisteminizde
PHP&amp;#39;nin yüklü olması gerek. Gelin şimdi tüm ayarları ve yüklemeleri nasıl yapabileceğimize
bir göz atalım.
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
İlk olarak &lt;a href="http://us3.php.net/get/php-5.2.5-Win32.zip/from/a/mirror"&gt;http://us3.php.net/get/php-5.2.5-Win32.zip/from/a/mirror&lt;/a&gt; adresinden
PHP 5&amp;#39;i bilgisayarınıza indirerek kaydedin. İndirdiğiniz ZIP dosyası içerisindeki
herşeyi sisteminizde herhangi bir klasöre boşaltın. Benim tavsiyem&amp;nbsp; &lt;strong&gt;C:\PHP&lt;/strong&gt; gibi
bir yerlere koymanız olacaktır.&lt;/li&gt;
&lt;li&gt;
Bir sonraki adımda ZIP dosyasından çıkardığınız dosyaların içinden php.ini-recommended
adındaki dosyanın bir kopyasını alarak adını da &lt;strong&gt;PHP.ini&lt;/strong&gt; olarak değiştirmeniz
gerekiyor. Bu dosyayı ASP.NET&amp;#39;teni Web.Config&amp;#39;e benzetebiliriz.&lt;/li&gt;
&lt;li&gt;
Expression Web içerisinde herhangi bir boş site yaratıp içerisinde bir PHP dosyası
oluşturduktan sonra bir defalığına PHP motorunu Expression Web&amp;#39;e göstermeniz gerekiyor.
Bunun için program içerisinde &amp;quot;&lt;strong&gt;Tools / Application Options&lt;/strong&gt;&amp;quot;
menüsünden ilerleyerek &amp;quot;&lt;strong&gt;Path to PHP Executable&lt;/strong&gt;&amp;quot; ayarını
değiştirmeniz gerekiyor. Örneğin şöyle bir ayar uygun olacaktır: &amp;quot;&lt;strong&gt;C:\PHP\php-cgi.exe&lt;/strong&gt;&amp;quot;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
Hepinize kolay gelsin ;)
&lt;/p&gt;
&lt;img width="0" height="0" src="http://daron.yondem.com/tr/aggbug.ashx?id=11907d24-0da8-4f9c-8f86-6c0dce6b24e8" /&gt;</description>
      <comments>http://daron.yondem.com/tr/CommentView.aspx?guid=11907d24-0da8-4f9c-8f86-6c0dce6b24e8</comments>
      <category>Expression Web</category>
    </item>
    <item>
      <trackback:ping>http://daron.yondem.com/tr/Trackback.aspx?guid=c0aace0f-da50-435a-85e2-7142b0ab4e32</trackback:ping>
      <pingback:server>http://daron.yondem.com/tr/pingback.aspx</pingback:server>
      <pingback:target>http://daron.yondem.com/tr/PermaLink.aspx?guid=c0aace0f-da50-435a-85e2-7142b0ab4e32</pingback:target>
      <dc:creator>Your DisplayName here!</dc:creator>
      <wfw:comment>http://daron.yondem.com/tr/CommentView.aspx?guid=c0aace0f-da50-435a-85e2-7142b0ab4e32</wfw:comment>
      <wfw:commentRss>http://daron.yondem.com/tr/SyndicationService.asmx/GetEntryCommentsRss?guid=c0aace0f-da50-435a-85e2-7142b0ab4e32</wfw:commentRss>
      <slash:comments>1</slash:comments>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
Tam bir ay olmuş! Geçen ayın 14'ünde açılışını yaptığımız <a href="http://daron.yondem.com/tr/sorusor/" target="_blank">Soru
Sorma Merkezi</a>'nin üzerinden bir ay geçti ve <strong>100 soru</strong> rekorunu
kırdık. İster buna "<em>Cevaplanmış 100 Soru</em>" sloganı atalım ister
"<em>100 Soru Cevapladık</em>" diyelim her ikisi de bir aylık bir süreç
ve yeni açılan bir sistem için sanırım güzel bir başarı. 
</p>
        <p>
Bu süreçte sisteme cevapları ile katkılarından dolayı teşekkür etmem gereken dostlar
var; <a href="http://www.siberkultur.com/" target="_blank">Eren Emre Kanal</a>, <a href="http://www.eralperat.com/" target="_blank">Eralp
Erat</a>, <a href="http://ercanaltug.blogspot.com/" target="_blank">E. Altuğ Yılmaz</a>, <a href="http://www.tayfunakcay.com/" target="_blank">Tayfun
Akçay</a> ve belki de adını üzülerek şu an atladığım tüm dostlara çok teşekkürler.
Soru Sorma Merkezi ile ilgili geleceğe yönelik planlarım var, bunları da en kısa zamanda
hayata geçirmeye çalışacağım.
</p>
        <p>
Tabi en önemlisi, sorularını tüm samimiyetleri ile benimle paylaşan siz sevgili dostlara
da çok teşekkürler.
</p>
        <img width="0" height="0" src="http://daron.yondem.com/tr/aggbug.ashx?id=c0aace0f-da50-435a-85e2-7142b0ab4e32" />
      </body>
      <title>Soru Sorma Merkezi'nde 1 ayda 100 soru cevaplandı!</title>
      <guid isPermaLink="false">http://daron.yondem.com/tr/PermaLink.aspx?guid=c0aace0f-da50-435a-85e2-7142b0ab4e32</guid>
      <link>http://daron.yondem.com/tr/PermaLink.aspx?guid=c0aace0f-da50-435a-85e2-7142b0ab4e32</link>
      <pubDate>Tue, 15 Jul 2008 05:52:34 GMT</pubDate>
      <description>
&lt;p&gt;
Tam bir ay olmuş! Geçen ayın 14&amp;#39;ünde açılışını yaptığımız &lt;a href="http://daron.yondem.com/tr/sorusor/" target="_blank"&gt;Soru
Sorma Merkezi&lt;/a&gt;&amp;#39;nin üzerinden bir ay geçti ve &lt;strong&gt;100 soru&lt;/strong&gt; rekorunu
kırdık. İster buna &amp;quot;&lt;em&gt;Cevaplanmış 100 Soru&lt;/em&gt;&amp;quot; sloganı atalım ister
&amp;quot;&lt;em&gt;100 Soru Cevapladık&lt;/em&gt;&amp;quot; diyelim her ikisi de bir aylık bir süreç
ve yeni açılan bir sistem için sanırım güzel bir başarı. 
&lt;/p&gt;
&lt;p&gt;
Bu süreçte sisteme cevapları ile katkılarından dolayı teşekkür etmem gereken dostlar
var; &lt;a href="http://www.siberkultur.com/" target="_blank"&gt;Eren Emre Kanal&lt;/a&gt;, &lt;a href="http://www.eralperat.com/" target="_blank"&gt;Eralp
Erat&lt;/a&gt;, &lt;a href="http://ercanaltug.blogspot.com/" target="_blank"&gt;E. Altuğ Yılmaz&lt;/a&gt;, &lt;a href="http://www.tayfunakcay.com/" target="_blank"&gt;Tayfun
Akçay&lt;/a&gt; ve belki de adını üzülerek şu an atladığım tüm dostlara çok teşekkürler.
Soru Sorma Merkezi ile ilgili geleceğe yönelik planlarım var, bunları da en kısa zamanda
hayata geçirmeye çalışacağım.
&lt;/p&gt;
&lt;p&gt;
Tabi en önemlisi, sorularını tüm samimiyetleri ile benimle paylaşan siz sevgili dostlara
da çok teşekkürler.
&lt;/p&gt;
&lt;img width="0" height="0" src="http://daron.yondem.com/tr/aggbug.ashx?id=c0aace0f-da50-435a-85e2-7142b0ab4e32" /&gt;</description>
      <comments>http://daron.yondem.com/tr/CommentView.aspx?guid=c0aace0f-da50-435a-85e2-7142b0ab4e32</comments>
    </item>
    <item>
      <trackback:ping>http://daron.yondem.com/tr/Trackback.aspx?guid=7a13b13a-ce73-4ca0-b106-5da96c78a08c</trackback:ping>
      <pingback:server>http://daron.yondem.com/tr/pingback.aspx</pingback:server>
      <pingback:target>http://daron.yondem.com/tr/PermaLink.aspx?guid=7a13b13a-ce73-4ca0-b106-5da96c78a08c</pingback:target>
      <dc:creator>Your DisplayName here!</dc:creator>
      <wfw:comment>http://daron.yondem.com/tr/CommentView.aspx?guid=7a13b13a-ce73-4ca0-b106-5da96c78a08c</wfw:comment>
      <wfw:commentRss>http://daron.yondem.com/tr/SyndicationService.asmx/GetEntryCommentsRss?guid=7a13b13a-ce73-4ca0-b106-5da96c78a08c</wfw:commentRss>
      <slash:comments>9</slash:comments>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
Yaz aylarının seminerler ve eğitimler açısından biraz sakin geçtiğinin farkındayım.
Bu nedenle bir süre önce ayaklanarak tatile gidemeyen yazılımcılara bir hafta sonu
dopingi hazırladık; <strong>INETA Summer Hit 2008!</strong></p>
        <p align="center">
          <img alt="" height="600" src="http://daron.yondem.com/tr/content/binary/14072008_1.jpg" width="600" border="1" />
        </p>
        <p>
Hepinizi aktiviteye bekliyorum. Her zamanki gibi aktiviteler boyunca vereceğimiz hediyelerden
aktivite öncesi bahsetmeyeceğim :) Peki neler yapacağız? İlk gün <strong>Silverlight
2.0</strong> ile sıcak bir giriş yaptıktan sonra yemek sonrası "<strong>Yazılım
Dünyası Nereye?</strong>" konulu bir sohbet panelimiz olacak. Bu panele sektörden
uzmanlarımız katılacak, sizin de sorularınızı alacağız, ayrıca söz konusu uzmanların
haberi yok ama onlarla ilgili sinsi planlarım da var :) Öğleden sonra ise <strong>Team
Foundation Server</strong> sunumumuz var. Özellikle hangi sunumu hangi uzmanımızın
yapacağından bahsetmiyorum :) 3 Ağustos Pazar günü ise <strong>Internet Explorer 8.0</strong> yenilikleri
ile başlayacağız. Yakın zamanda Beta 2 sonrasında da tam sürümü ile IE 8.0'in
çok ilginç yenilikleri var. Sonrasında bir <strong>Web 3.0</strong> vizyonerlik sunumu
ve <strong>Web Client Software Factory</strong> konusunu inceleyeceğiz. Son olarak <strong>LINQ'in</strong> hem
C# hem VB kısmına göz atarak (Tamam, itiraf ediyorum VB kısmında ben varım) iki güzel
günü bitirmiş olacağız. 
</p>
        <p>
İsteyenler aktivitelere laptopları ile gelebilirler. Hem anlatılanları denemek hem
de kullanılan uygulamaları hemen konuşmacılardan almak için hoş bir seçenek olacaktır.
Lütfen kayıt olmayı unutmayın, <strong>Yıldız Teknik Üniversitesi</strong>'ndeki
aktiviteye girişte isimleriniz kontrol edilecektir.
</p>
        <p>
Aktivitenin organizasyonunda yardımlarından dolayı sevgili <strong>Ali Rıza Babaoğlan</strong> ve <strong>Oğuz
Yılmaz</strong>'a teşekkür ediyorum.
</p>
        <p>
          <strong>Kayıt adresi</strong>: <a target="_blank" href="http://tinyurl.com/inetasummerhit"> http://tinyurl.com/inetasummerhit</a></p>
        <p>
Aktivitenin duyurulması için aşağıdaki banner'ı yukarıdaki adrese linkleyerek
kullanabilirsiniz ;)
</p>
        <p>
          <img border="0" src="http://daron.yondem.com/tr/content/binary/inetasummerhit2008_46860.jpg" />
        </p>
        <img width="0" height="0" src="http://daron.yondem.com/tr/aggbug.ashx?id=7a13b13a-ce73-4ca0-b106-5da96c78a08c" />
      </body>
      <title>INETA Summer Hit 2008</title>
      <guid isPermaLink="false">http://daron.yondem.com/tr/PermaLink.aspx?guid=7a13b13a-ce73-4ca0-b106-5da96c78a08c</guid>
      <link>http://daron.yondem.com/tr/PermaLink.aspx?guid=7a13b13a-ce73-4ca0-b106-5da96c78a08c</link>
      <pubDate>Mon, 14 Jul 2008 10:41:11 GMT</pubDate>
      <description>&lt;p&gt;
Yaz aylarının seminerler ve eğitimler açısından biraz sakin geçtiğinin farkındayım.
Bu nedenle bir süre önce ayaklanarak tatile gidemeyen yazılımcılara bir hafta sonu
dopingi hazırladık; &lt;strong&gt;INETA Summer Hit 2008!&lt;/strong&gt;
&lt;/p&gt;
&lt;p align="center"&gt;
&lt;img alt="" height="600" src="http://daron.yondem.com/tr/content/binary/14072008_1.jpg" width="600" border="1"&gt;
&lt;/p&gt;
&lt;p&gt;
Hepinizi aktiviteye bekliyorum. Her zamanki gibi aktiviteler boyunca vereceğimiz hediyelerden
aktivite öncesi bahsetmeyeceğim :) Peki neler yapacağız? İlk gün &lt;strong&gt;Silverlight
2.0&lt;/strong&gt; ile sıcak bir giriş yaptıktan sonra yemek sonrası &amp;quot;&lt;strong&gt;Yazılım
Dünyası Nereye?&lt;/strong&gt;&amp;quot; konulu bir sohbet panelimiz olacak. Bu panele sektörden
uzmanlarımız katılacak, sizin de sorularınızı alacağız, ayrıca söz konusu uzmanların
haberi yok ama onlarla ilgili sinsi planlarım da var :) Öğleden sonra ise &lt;strong&gt;Team
Foundation Server&lt;/strong&gt; sunumumuz var. Özellikle hangi sunumu hangi uzmanımızın
yapacağından bahsetmiyorum :) 3 Ağustos Pazar günü ise &lt;strong&gt;Internet Explorer 8.0&lt;/strong&gt; yenilikleri
ile başlayacağız. Yakın zamanda Beta 2 sonrasında da tam sürümü ile IE 8.0&amp;#39;in
çok ilginç yenilikleri var. Sonrasında bir &lt;strong&gt;Web 3.0&lt;/strong&gt; vizyonerlik sunumu
ve &lt;strong&gt;Web Client Software Factory&lt;/strong&gt; konusunu inceleyeceğiz. Son olarak &lt;strong&gt;LINQ&amp;#39;in&lt;/strong&gt; hem
C# hem VB kısmına göz atarak (Tamam, itiraf ediyorum VB kısmında ben varım) iki güzel
günü bitirmiş olacağız. 
&lt;/p&gt;
&lt;p&gt;
İsteyenler aktivitelere laptopları ile gelebilirler. Hem anlatılanları denemek hem
de kullanılan uygulamaları hemen konuşmacılardan almak için hoş bir seçenek olacaktır.
Lütfen kayıt olmayı unutmayın, &lt;strong&gt;Yıldız Teknik Üniversitesi&lt;/strong&gt;&amp;#39;ndeki
aktiviteye girişte isimleriniz kontrol edilecektir.
&lt;/p&gt;
&lt;p&gt;
Aktivitenin organizasyonunda yardımlarından dolayı sevgili &lt;strong&gt;Ali Rıza Babaoğlan&lt;/strong&gt; ve &lt;strong&gt;Oğuz
Yılmaz&lt;/strong&gt;&amp;#39;a teşekkür ediyorum.
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;Kayıt adresi&lt;/strong&gt;: &lt;a target="_blank" href="http://tinyurl.com/inetasummerhit"&gt; http://tinyurl.com/inetasummerhit&lt;/a&gt; 
&lt;/p&gt;
&lt;p&gt;
Aktivitenin duyurulması için aşağıdaki banner&amp;#39;ı yukarıdaki adrese linkleyerek
kullanabilirsiniz ;)
&lt;/p&gt;
&lt;p&gt;
&lt;img border="0" src="http://daron.yondem.com/tr/content/binary/inetasummerhit2008_46860.jpg"&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://daron.yondem.com/tr/aggbug.ashx?id=7a13b13a-ce73-4ca0-b106-5da96c78a08c" /&gt;</description>
      <comments>http://daron.yondem.com/tr/CommentView.aspx?guid=7a13b13a-ce73-4ca0-b106-5da96c78a08c</comments>
      <category>Seminer</category>
    </item>
    <item>
      <trackback:ping>http://daron.yondem.com/tr/Trackback.aspx?guid=1ac88fb9-146e-4f96-ba4d-45e58dfb0897</trackback:ping>
      <pingback:server>http://daron.yondem.com/tr/pingback.aspx</pingback:server>
      <pingback:target>http://daron.yondem.com/tr/PermaLink.aspx?guid=1ac88fb9-146e-4f96-ba4d-45e58dfb0897</pingback:target>
      <dc:creator>Your DisplayName here!</dc:creator>
      <wfw:comment>http://daron.yondem.com/tr/CommentView.aspx?guid=1ac88fb9-146e-4f96-ba4d-45e58dfb0897</wfw:comment>
      <wfw:commentRss>http://daron.yondem.com/tr/SyndicationService.asmx/GetEntryCommentsRss?guid=1ac88fb9-146e-4f96-ba4d-45e58dfb0897</wfw:commentRss>
      <slash:comments>12</slash:comments>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
Bundan yaklaşık 6 ay önceydi sanırım <a href="http://www.gencgirisimciler.org/" target="_blank">GGK</a> organizasyonunda
bir Silverlight seminerimiz olmuştu. Bu seminerin video kaydı alınıp internete konmuş
olsa da ben blogdan paylaşmayı unutmuşum :) Sağ olsun sevgili <strong>Recep Selli </strong>durumu
hatırlamamı sağladı. Silverlight 1.0 gibi artık eski diyebileceğim bir konu olsa da
buyurun arkadaşlar 3 saatlik <a href="http://video.google.com/videoplay?docid=-5195533478324657131&amp;q=daron&amp;ei=DGZ7SNPmMIXq2QLA_ZyABA" target="_blank"> Silverlight
1.0 semineri </a>karşınızda.
</p>
        <img width="0" height="0" src="http://daron.yondem.com/tr/aggbug.ashx?id=1ac88fb9-146e-4f96-ba4d-45e58dfb0897" />
      </body>
      <title>3 saatlik Silverlight 1.0 Seminerinin videosu karşınızda!</title>
      <guid isPermaLink="false">http://daron.yondem.com/tr/PermaLink.aspx?guid=1ac88fb9-146e-4f96-ba4d-45e58dfb0897</guid>
      <link>http://daron.yondem.com/tr/PermaLink.aspx?guid=1ac88fb9-146e-4f96-ba4d-45e58dfb0897</link>
      <pubDate>Sun, 13 Jul 2008 16:07:54 GMT</pubDate>
      <description>&lt;p&gt;
Bundan yaklaşık 6 ay önceydi sanırım &lt;a href="http://www.gencgirisimciler.org/" target="_blank"&gt;GGK&lt;/a&gt; organizasyonunda
bir Silverlight seminerimiz olmuştu. Bu seminerin video kaydı alınıp internete konmuş
olsa da ben blogdan paylaşmayı unutmuşum :) Sağ olsun sevgili &lt;strong&gt;Recep Selli &lt;/strong&gt;durumu
hatırlamamı sağladı. Silverlight 1.0 gibi artık eski diyebileceğim bir konu olsa da
buyurun arkadaşlar 3 saatlik &lt;a href="http://video.google.com/videoplay?docid=-5195533478324657131&amp;amp;q=daron&amp;amp;ei=DGZ7SNPmMIXq2QLA_ZyABA" target="_blank"&gt; Silverlight
1.0 semineri &lt;/a&gt;karşınızda.
&lt;/p&gt;
&lt;img width="0" height="0" src="http://daron.yondem.com/tr/aggbug.ashx?id=1ac88fb9-146e-4f96-ba4d-45e58dfb0897" /&gt;</description>
      <comments>http://daron.yondem.com/tr/CommentView.aspx?guid=1ac88fb9-146e-4f96-ba4d-45e58dfb0897</comments>
      <category>Silverlight</category>
    </item>
    <item>
      <trackback:ping>http://daron.yondem.com/tr/Trackback.aspx?guid=a74dbfa8-1bd7-4995-b86e-2936d1c5b6c8</trackback:ping>
      <pingback:server>http://daron.yondem.com/tr/pingback.aspx</pingback:server>
      <pingback:target>http://daron.yondem.com/tr/PermaLink.aspx?guid=a74dbfa8-1bd7-4995-b86e-2936d1c5b6c8</pingback:target>
      <dc:creator>Your DisplayName here!</dc:creator>
      <wfw:comment>http://daron.yondem.com/tr/CommentView.aspx?guid=a74dbfa8-1bd7-4995-b86e-2936d1c5b6c8</wfw:comment>
      <wfw:commentRss>http://daron.yondem.com/tr/SyndicationService.asmx/GetEntryCommentsRss?guid=a74dbfa8-1bd7-4995-b86e-2936d1c5b6c8</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
Her programcının hayatında en az birkaç defe Office dosya formatları ile ilgilendiği
projeler olmuştur. Bu durum ister yeni bir Word dosyası yaratmak olsun, ister bir
Excel dosyasından veri çekmek olsun <strong>OpenXML</strong> öncesinde ciddi sıkıntılar
çektiğimiz bir gerçek. En basit bir sebep olarak binary formatlı dokümanlar ile uğraşmak
zorunda kaldığımızı söyleyebiliriz. Office 2007 ile beraber tanıştığımız ve sonlarına
X harfleri eklenen dosya uzantıları aslında OpenXML'in geldiğinin bir işaretiydi.
İyi ki geldin diyerek yavaş yavaş konumuza geçiş yapalım.
</p>
        <p>
Daha önceki yazılarımda Silverlight 2.0 ile istemci tarafındaki dosyalara <a href="http://daron.yondem.com/tr/PermaLink.aspx?guid=127a5e83-590f-44e1-8cdb-b69603944fc1" target="_blank">OpenFileDialog</a> ile
ulaşabildiğimizi görmüştük. Yine aynı sistemi kullanarak bu sefer amacımız bir Powerpoint
dosyasını açarak söz konusu dosyanın Thumbnail görüntüsünü Silverlight içerisinde
göstermek. Aslında çok şanslıyız, neden mi? Çünkü OpenXML var.
</p>
        <p style="color:maroon;">
          <strong>OpenXML'in bize faydası ne?</strong>
        </p>
        <p>
OpenXML formatındaki her dosya aslında bir ZIP dosyasıdır. Eğer dosyanın uzantısını
ZIP olarak değiştirirseniz aslında içerisine girerek tüm detayları görebilirsiniz. 
</p>
        <p align="center">
          <img border="1" alt="OpenXML dosyalarının içinde herşey XML formatında, açık seçik karşımızda." height="461" src="http://daron.yondem.com/tr/content/binary/120720