<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://geeks.netindonesia.net/utility/FeedStylesheets/atom.xsl" media="screen"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en"><title type="html">Ahmad Masykur</title><subtitle type="html">var myObject = { &amp;quot;languages&amp;quot;  : [ &amp;quot;C#&amp;quot;, &amp;quot;VB.NET&amp;quot;, &amp;quot;ASP.NET&amp;quot;, &amp;quot;Javascript&amp;quot;, &amp;quot;SDCC&amp;quot;, &amp;quot;Assembler&amp;quot; ] }; // 
</subtitle><id>http://geeks.netindonesia.net/blogs/cahnom/atom.aspx</id><link rel="alternate" type="text/html" href="http://geeks.netindonesia.net/blogs/cahnom/default.aspx" /><link rel="self" type="application/atom+xml" href="http://geeks.netindonesia.net/blogs/cahnom/atom.aspx" /><generator uri="http://communityserver.org" version="3.1.20917.1142">Community Server</generator><updated>2008-03-28T23:07:56Z</updated><entry><title>Google Chrome - Browser Keluaran Google</title><link rel="alternate" type="text/html" href="http://geeks.netindonesia.net/blogs/cahnom/archive/2008/09/04/google-chrome-browser-keluaran-google.aspx" /><id>http://geeks.netindonesia.net/blogs/cahnom/archive/2008/09/04/google-chrome-browser-keluaran-google.aspx</id><published>2008-09-03T23:29:00Z</published><updated>2008-09-03T23:29:00Z</updated><content type="html">&lt;p&gt;Google baru saja mengeluarkan browser barunya yang dinamakan Google Chrome. Sepintas tidak ada kelebihan antara Google Chrome dengan browser-browser lainnya. Namun setelah digunakan untuk melakukan navigasi, browser ini menawarkan kenyamana dalam berselancar. Area browser yang luas dan tidak terlalu banyak toolbar membuat browser ini lebih nyaman digunakan.&lt;/p&gt; &lt;p&gt;&lt;a href="http://geeks.netindonesia.net/blogs/cahnom/WindowsLiveWriter/GoogleChromeBrowserKeluaranGoogle_5B00/image_2.png"&gt;&lt;img src="http://geeks.netindonesia.net/blogs/cahnom/WindowsLiveWriter/GoogleChromeBrowserKeluaranGoogle_5B00/image_thumb.png" style="border-width:0px;" alt="image" border="0" height="223" width="244" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Selain kenyamanan, Google Chrome juga lebih cepat diakses dengan managemen memory yang lebih efisien. Masing-masing tab dipisahkan ke dalam proses sendiri sehinga jika salah satu tab mengalami crash maka tab yang lain masih terbuka.&lt;/p&gt; &lt;p&gt;Saya telah coba gunakan untuk membuka beberapa situs favorite saya, tidak ada masalah dengan layout yang ditampilkan oleh Google Chrome. Untuk web produk Google seperti &lt;a href="http://mail.google.com/"&gt;GMail&lt;/a&gt;, &lt;a href="http://docs.google.com"&gt;Google Documents&lt;/a&gt;, Blogger, dll tampak lebih cepat.&lt;/p&gt; &lt;p&gt;Google chrome secara otomatis akan menginstall bahasa yang diset di komputer, pada komputer saya terdapat dua bahasa yang terpasang Indonesia dan English. Pemilihan bahsa tidak hanya untuk mengatur bahasa yang digunakan dalam aplikasi. Fitur ini juga memungkinkan untuk menjelajahi situs yang mendukung auto language seperti &lt;a href="http://www.masykur.web.id"&gt;www.masykur.web.id&lt;/a&gt; sehingga tampilan bahasa sesuai dengan setting browser.&lt;/p&gt; &lt;p&gt;Google Chrome bootstrap installer dapat diambil di &lt;a href="http://www.google.com/chrome/index.html?hl=id&amp;amp;brand=CHMG&amp;amp;utm_source=id-hpp&amp;amp;utm_medium=hpp&amp;amp;utm_campaign=id" title="http://www.google.com/chrome/index.html?hl=id&amp;amp;brand=CHMG&amp;amp;utm_source=id-hpp&amp;amp;utm_medium=hpp&amp;amp;utm_campaign=id"&gt;http://www.google.com/chrome/index.html?hl=id&amp;amp;brand=CHMG&amp;amp;utm_source=id-hpp&amp;amp;utm_medium=hpp&amp;amp;utm_campaign=id&lt;/a&gt;&lt;/p&gt;&lt;p&gt;Semoga bermanfaat.&lt;/p&gt;
&lt;div class = "shareblock"&gt;&lt;strong&gt;Share this post: &lt;/strong&gt;&lt;a href="mailto:?body=Thought you might like this: http://geeks.netindonesia.net/blogs/cahnom/archive/2008/09/04/google-chrome-browser-keluaran-google.aspx&amp;amp;subject=Google Chrome - Browser Keluaran Google" target="_blank" title="Send via email"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Mail.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://www.facebook.com/sharer.php?u=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/09/04/google-chrome-browser-keluaran-google.aspx&amp;amp;t=Google+Chrome+-+Browser+Keluaran+Google" target="_blank" title="Submit Google Chrome - Browser Keluaran Google to DotNetKicks"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Facebook.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://del.icio.us/post?url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/09/04/google-chrome-browser-keluaran-google.aspx&amp;amp;title=Google+Chrome+-+Browser+Keluaran+Google" target="_blank" title="Submit Google Chrome - Browser Keluaran Google to del.icio.us"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Delicious.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://www.digg.com/submit?url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/09/04/google-chrome-browser-keluaran-google.aspx&amp;amp;phase=2" target="_blank" title="Submit Google Chrome - Browser Keluaran Google to digg.com"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Digg.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;mkt=en-us&amp;amp;url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/09/04/google-chrome-browser-keluaran-google.aspx&amp;amp;title=Google+Chrome+-+Browser+Keluaran+Google" target="_blank" title="Add Google Chrome - Browser Keluaran Google to Live Bookmarks"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Live.16.gif" border="0"&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://geeks.netindonesia.net/aggbug.aspx?PostID=65440" width="1" height="1"&gt;</content><author><name>cahnom</name><uri>http://geeks.netindonesia.net/members/cahnom.aspx</uri></author><category term="Google" scheme="http://geeks.netindonesia.net/blogs/cahnom/archive/tags/Google/default.aspx" /><category term="google chrome" scheme="http://geeks.netindonesia.net/blogs/cahnom/archive/tags/google+chrome/default.aspx" /><category term="Chrome" scheme="http://geeks.netindonesia.net/blogs/cahnom/archive/tags/Chrome/default.aspx" /><category term="Browser" scheme="http://geeks.netindonesia.net/blogs/cahnom/archive/tags/Browser/default.aspx" /></entry><entry><title>ASP.NET MVC Preview 5 is Now Available on Codeplex</title><link rel="alternate" type="text/html" href="http://geeks.netindonesia.net/blogs/cahnom/archive/2008/09/02/ASPNET_2D00_MVC_2D00_Preview_2D00_5_2D00_is_2D00_Now_2D00_Available_2D00_on_2D00_Codeplex.aspx" /><id>http://geeks.netindonesia.net/blogs/cahnom/archive/2008/09/02/ASPNET_2D00_MVC_2D00_Preview_2D00_5_2D00_is_2D00_Now_2D00_Available_2D00_on_2D00_Codeplex.aspx</id><published>2008-09-01T23:24:12Z</published><updated>2008-09-01T23:24:12Z</updated><content type="html">&lt;p&gt;A few days ago, ASP.NET MVC Preview 5 has been released that can be downloaded from &lt;a title="http://www.codeplex.com/aspnet" href="http://www.codeplex.com/aspnet"&gt;http://www.codeplex.com/aspnet&lt;/a&gt;. In this release has two new stuffs: (a) Added global registration of view engine; (b) Changed the IVieew engine interface to add the RenderPartial method. Other improvements are: Added support for rendering partial view, added a parameter to specify a default option label for DropDownList control, Moved ASP.NET AJAX extension methods to a separate namespace, Added helpers for RadioButton and TextArea controls and made overall improvement to other helpers, and Remove helper method overloads to avoid ambiguity.&lt;/p&gt; &lt;p&gt;This new release has been used Routing Engine (System.Web.Routing) that shipped with Microsoft .NET Framework SP1. Make sure uninstall previous first before upgrade this release from previous release. This release is not compatible with Microsoft Visual Studio 2008 SP1 beta thus uninstall it first and install new RTM version of SP1. For more information about upgrading and installation, please read release notes that can be downloaded separately from installer package.&lt;/p&gt;
&lt;div class = "shareblock"&gt;&lt;strong&gt;Share this post: &lt;/strong&gt;&lt;a href="mailto:?body=Thought you might like this: http://geeks.netindonesia.net/blogs/cahnom/archive/2008/09/02/ASPNET_2D00_MVC_2D00_Preview_2D00_5_2D00_is_2D00_Now_2D00_Available_2D00_on_2D00_Codeplex.aspx&amp;amp;subject=ASP.NET MVC Preview 5 is Now Available on Codeplex" target="_blank" title="Send via email"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Mail.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://www.facebook.com/sharer.php?u=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/09/02/ASPNET_2D00_MVC_2D00_Preview_2D00_5_2D00_is_2D00_Now_2D00_Available_2D00_on_2D00_Codeplex.aspx&amp;amp;t=ASP.NET+MVC+Preview+5+is+Now+Available+on+Codeplex" target="_blank" title="Submit ASP.NET MVC Preview 5 is Now Available on Codeplex to DotNetKicks"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Facebook.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://del.icio.us/post?url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/09/02/ASPNET_2D00_MVC_2D00_Preview_2D00_5_2D00_is_2D00_Now_2D00_Available_2D00_on_2D00_Codeplex.aspx&amp;amp;title=ASP.NET+MVC+Preview+5+is+Now+Available+on+Codeplex" target="_blank" title="Submit ASP.NET MVC Preview 5 is Now Available on Codeplex to del.icio.us"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Delicious.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://www.digg.com/submit?url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/09/02/ASPNET_2D00_MVC_2D00_Preview_2D00_5_2D00_is_2D00_Now_2D00_Available_2D00_on_2D00_Codeplex.aspx&amp;amp;phase=2" target="_blank" title="Submit ASP.NET MVC Preview 5 is Now Available on Codeplex to digg.com"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Digg.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;mkt=en-us&amp;amp;url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/09/02/ASPNET_2D00_MVC_2D00_Preview_2D00_5_2D00_is_2D00_Now_2D00_Available_2D00_on_2D00_Codeplex.aspx&amp;amp;title=ASP.NET+MVC+Preview+5+is+Now+Available+on+Codeplex" target="_blank" title="Add ASP.NET MVC Preview 5 is Now Available on Codeplex to Live Bookmarks"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Live.16.gif" border="0"&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://geeks.netindonesia.net/aggbug.aspx?PostID=65201" width="1" height="1"&gt;</content><author><name>cahnom</name><uri>http://geeks.netindonesia.net/members/cahnom.aspx</uri></author><category term="AJAX" scheme="http://geeks.netindonesia.net/blogs/cahnom/archive/tags/AJAX/default.aspx" /><category term="MVC Framework" scheme="http://geeks.netindonesia.net/blogs/cahnom/archive/tags/MVC+Framework/default.aspx" /><category term="asp.net mvc" scheme="http://geeks.netindonesia.net/blogs/cahnom/archive/tags/asp.net+mvc/default.aspx" /></entry><entry><title>Busby SEO Challenge - Sehari Setelah Pendaftaran</title><link rel="alternate" type="text/html" href="http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/29/Busby_2D00_SEO_2D00_Challenge_2D00_1st_2D00_day.aspx" /><id>http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/29/Busby_2D00_SEO_2D00_Challenge_2D00_1st_2D00_day.aspx</id><published>2008-07-29T02:17:09Z</published><updated>2008-07-29T02:17:09Z</updated><content type="html">&lt;p&gt;Setelah semalam mendaftar &lt;a href="http://www.masykur.web.id/post/busby-seo-challenge.aspx" target="_blank"&gt;Busby SEO Challenge&lt;/a&gt;, hari ini coba query dengan keyword busby. Wow... situs saya telah berada di peringkat ke 9 dari daftar pencarian google. &lt;/p&gt; &lt;p&gt;&lt;a href="http://geeks.netindonesia.net/blogs/cahnom/WindowsLiveWriter/BusbySEOChallengeSehariSetelahPendaftara_8295/image_2.png"&gt;&lt;img style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" height="244" alt="image" src="http://geeks.netindonesia.net/blogs/cahnom/WindowsLiveWriter/BusbySEOChallengeSehariSetelahPendaftara_8295/image_thumb.png" width="142" border="0" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Dengan bermodal 5788 external link yang merujuk ke &lt;a href="http://www.masykur.web.id"&gt;www.masykur.web.id&lt;/a&gt;, semoga bisa terus naik hingga urutan pertama. Amin.&lt;/p&gt;
&lt;div class = "shareblock"&gt;&lt;strong&gt;Share this post: &lt;/strong&gt;&lt;a href="mailto:?body=Thought you might like this: http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/29/Busby_2D00_SEO_2D00_Challenge_2D00_1st_2D00_day.aspx&amp;amp;subject=Busby SEO Challenge - Sehari Setelah Pendaftaran" target="_blank" title="Send via email"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Mail.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://www.facebook.com/sharer.php?u=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/29/Busby_2D00_SEO_2D00_Challenge_2D00_1st_2D00_day.aspx&amp;amp;t=Busby+SEO+Challenge+-+Sehari+Setelah+Pendaftaran" target="_blank" title="Submit Busby SEO Challenge - Sehari Setelah Pendaftaran to DotNetKicks"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Facebook.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://del.icio.us/post?url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/29/Busby_2D00_SEO_2D00_Challenge_2D00_1st_2D00_day.aspx&amp;amp;title=Busby+SEO+Challenge+-+Sehari+Setelah+Pendaftaran" target="_blank" title="Submit Busby SEO Challenge - Sehari Setelah Pendaftaran to del.icio.us"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Delicious.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://www.digg.com/submit?url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/29/Busby_2D00_SEO_2D00_Challenge_2D00_1st_2D00_day.aspx&amp;amp;phase=2" target="_blank" title="Submit Busby SEO Challenge - Sehari Setelah Pendaftaran to digg.com"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Digg.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;mkt=en-us&amp;amp;url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/29/Busby_2D00_SEO_2D00_Challenge_2D00_1st_2D00_day.aspx&amp;amp;title=Busby+SEO+Challenge+-+Sehari+Setelah+Pendaftaran" target="_blank" title="Add Busby SEO Challenge - Sehari Setelah Pendaftaran to Live Bookmarks"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Live.16.gif" border="0"&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://geeks.netindonesia.net/aggbug.aspx?PostID=59411" width="1" height="1"&gt;</content><author><name>cahnom</name><uri>http://geeks.netindonesia.net/members/cahnom.aspx</uri></author><category term="busby" scheme="http://geeks.netindonesia.net/blogs/cahnom/archive/tags/busby/default.aspx" /><category term="Busby SEO Challenge" scheme="http://geeks.netindonesia.net/blogs/cahnom/archive/tags/Busby+SEO+Challenge/default.aspx" /></entry><entry><title>Busby SEO Challenge</title><link rel="alternate" type="text/html" href="http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/28/busby_2D00_seo_2D00_challenge.aspx" /><id>http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/28/busby_2D00_seo_2D00_challenge.aspx</id><published>2008-07-28T12:19:00Z</published><updated>2008-07-28T12:19:00Z</updated><content type="html">&lt;p&gt;Berdasarkan informasi di milis tetangga, ternyata sekarang sedang ada kompetisi SEO. Penilaian dilakukan dengan pencarian menggunakan keyphrase : &lt;strong&gt;Busby SEO Challenge.&lt;/strong&gt; Peserta diwajibkan mendaftar dan menuliskan kalimat: Participant in the &lt;a href="http://worldcup.busbywebsolutions.com/index.php?/seoentrants"&gt;Busby Web Solutions Search Engine Optimisation Challenge&lt;/a&gt; untuk link back ke penyelenggara kompetisi.&lt;/p&gt;
&lt;p&gt;Iseng-iseng ikutan siapa tahu dapat masuk di top-rank, saya coba daftar dan memancing google untuk mengindex page saya di &lt;a title="Busby SEO Challenge" href="http://www.masykur.web.id/post/busby-seo-challenge.aspx"&gt;Busby SEO Challenge&lt;/a&gt;. Setelah googling ternyata peserta dari Indonesia banyak yang sudah menduduki peringkat 10 besar. Bermodal page-rank yang selama ini saya dapat, semoga saya bisa menyusul mereka yang telah mendaftar lebih dulu.&lt;/p&gt;
&lt;div class = "shareblock"&gt;&lt;strong&gt;Share this post: &lt;/strong&gt;&lt;a href="mailto:?body=Thought you might like this: http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/28/busby_2D00_seo_2D00_challenge.aspx&amp;amp;subject=Busby SEO Challenge" target="_blank" title="Send via email"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Mail.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://www.facebook.com/sharer.php?u=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/28/busby_2D00_seo_2D00_challenge.aspx&amp;amp;t=Busby+SEO+Challenge" target="_blank" title="Submit Busby SEO Challenge to DotNetKicks"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Facebook.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://del.icio.us/post?url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/28/busby_2D00_seo_2D00_challenge.aspx&amp;amp;title=Busby+SEO+Challenge" target="_blank" title="Submit Busby SEO Challenge to del.icio.us"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Delicious.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://www.digg.com/submit?url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/28/busby_2D00_seo_2D00_challenge.aspx&amp;amp;phase=2" target="_blank" title="Submit Busby SEO Challenge to digg.com"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Digg.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;mkt=en-us&amp;amp;url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/28/busby_2D00_seo_2D00_challenge.aspx&amp;amp;title=Busby+SEO+Challenge" target="_blank" title="Add Busby SEO Challenge to Live Bookmarks"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Live.16.gif" border="0"&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://geeks.netindonesia.net/aggbug.aspx?PostID=59198" width="1" height="1"&gt;</content><author><name>cahnom</name><uri>http://geeks.netindonesia.net/members/cahnom.aspx</uri></author><category term="busby" scheme="http://geeks.netindonesia.net/blogs/cahnom/archive/tags/busby/default.aspx" /><category term="seo" scheme="http://geeks.netindonesia.net/blogs/cahnom/archive/tags/seo/default.aspx" /><category term="Busby SEO Challenge" scheme="http://geeks.netindonesia.net/blogs/cahnom/archive/tags/Busby+SEO+Challenge/default.aspx" /></entry><entry><title>Password User BlogEngine.NET 1.4 telah Terenkripsi</title><link rel="alternate" type="text/html" href="http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/16/password-user-blogengine-net-1-4-telah-terenkripsi.aspx" /><id>http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/16/password-user-blogengine-net-1-4-telah-terenkripsi.aspx</id><published>2008-07-16T01:50:51Z</published><updated>2008-07-16T01:50:51Z</updated><content type="html">&lt;p&gt;Akhirnya password user BlogEngine.NET dienkripsi juga. Hampir dua tahun pake BlogEngine.NET sejak versi 0.8, password dalam file XML disimpan dalam plain text. Setelah versi terbaru (1.4) akhirnya password dienkrip dengan algoritma SHA256. Kita bisa intip kode enkripsi password yang digunakan BlogEngine.NET sebagai berikut.&lt;/p&gt; &lt;p&gt; &lt;div class="wlWriterSmartContent" id="scid:57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:bf582b97-c227-4a5d-8c68-5b2c4dd4acfd" style="padding-right:0px;display:inline;padding-left:0px;float:none;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;pre style="background-color:White;overflow:auto;"&gt;&lt;div&gt;&lt;span style="color:#808080;"&gt;///&lt;/span&gt;&lt;span style="color:#008000;"&gt; &lt;/span&gt;&lt;span style="color:#808080;"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="color:#008000;"&gt;
&lt;/span&gt;&lt;span style="color:#808080;"&gt;///&lt;/span&gt;&lt;span style="color:#008000;"&gt; Encrypts a string using the SHA256 algorithm.
&lt;/span&gt;&lt;span style="color:#808080;"&gt;///&lt;/span&gt;&lt;span style="color:#008000;"&gt; &lt;/span&gt;&lt;span style="color:#808080;"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="color:#808080;"&gt;
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;public&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;static&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;string&lt;/span&gt;&lt;span style="color:#000000;"&gt; HashPassword(&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;string&lt;/span&gt;&lt;span style="color:#000000;"&gt; plainMessage)
{
    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;byte&lt;/span&gt;&lt;span style="color:#000000;"&gt;[] data &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; Encoding.UTF8.GetBytes(plainMessage);
    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;using&lt;/span&gt;&lt;span style="color:#000000;"&gt; (HashAlgorithm sha &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;new&lt;/span&gt;&lt;span style="color:#000000;"&gt; SHA256Managed())
    {
        &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;byte&lt;/span&gt;&lt;span style="color:#000000;"&gt;[] encryptedBytes &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; sha.TransformFinalBlock(data, &lt;/span&gt;&lt;span style="color:#800080;"&gt;0&lt;/span&gt;&lt;span style="color:#000000;"&gt;, data.Length);
        &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;return&lt;/span&gt;&lt;span style="color:#000000;"&gt; Convert.ToBase64String(sha.Hash);
    }
}&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/p&gt;
&lt;p&gt;Pada file User.xml yang sebelumnya tidak dienkripsi sekarang sudah terenkripsi seperti terlihat pada kode berikut.&lt;/p&gt;
&lt;div class="wlWriterSmartContent" id="scid:57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:ed6603fa-cd1d-463a-98bf-97c3f667d3bf" style="padding-right:0px;display:inline;padding-left:0px;float:none;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;pre style="background-color:White;overflow:auto;"&gt;&lt;div&gt;&lt;span style="color:#0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;Users&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;
  &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;User&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;
    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;UserName&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;Admin&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;UserName&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;
    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;Password&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;jGl25bVBBBW96Qi9Te4V37Fnqchz/Eu4qB9vKrRIqRg=&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;Password&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;
    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;Email&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;post@example.com&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;Email&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;
    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;LastLoginTime&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;2007-12-05 20:46:40&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;LastLoginTime&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;
  &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;User&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;
  &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;User&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;
    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;UserName&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;mads&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;UserName&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;
    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;Password&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;JXMu9HdxF4mOBSAx4DrWOPAzJt58v+/sHfrxoko0m0M=&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;Password&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;
    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;Email&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;mads@zyb.dk&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;Email&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;
    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;LastLoginTime&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;2008-07-07 19:11:41&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;LastLoginTime&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;
  &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;User&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;Users&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Seperti terlihat pada kode di atas bahwa password telah terenkripsi. Teks password sebenarnya tidak dapat terbaca. Password standar BlogEngine.NET untuk user Admin adalah &amp;quot;admin&amp;quot; tanpa tanda kutip.&lt;br /&gt;Akhirnya bisa lebih tenang karena password saya tidak bisa diintip lagi oleh admin hosting. Sorry ya mas Rudy... Hehehe...&lt;/p&gt;
&lt;div class = "shareblock"&gt;&lt;strong&gt;Share this post: &lt;/strong&gt;&lt;a href="mailto:?body=Thought you might like this: http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/16/password-user-blogengine-net-1-4-telah-terenkripsi.aspx&amp;amp;subject=Password User BlogEngine.NET 1.4 telah Terenkripsi" target="_blank" title="Send via email"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Mail.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://www.facebook.com/sharer.php?u=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/16/password-user-blogengine-net-1-4-telah-terenkripsi.aspx&amp;amp;t=Password+User+BlogEngine.NET+1.4+telah+Terenkripsi" target="_blank" title="Submit Password User BlogEngine.NET 1.4 telah Terenkripsi to DotNetKicks"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Facebook.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://del.icio.us/post?url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/16/password-user-blogengine-net-1-4-telah-terenkripsi.aspx&amp;amp;title=Password+User+BlogEngine.NET+1.4+telah+Terenkripsi" target="_blank" title="Submit Password User BlogEngine.NET 1.4 telah Terenkripsi to del.icio.us"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Delicious.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://www.digg.com/submit?url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/16/password-user-blogengine-net-1-4-telah-terenkripsi.aspx&amp;amp;phase=2" target="_blank" title="Submit Password User BlogEngine.NET 1.4 telah Terenkripsi to digg.com"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Digg.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;mkt=en-us&amp;amp;url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/16/password-user-blogengine-net-1-4-telah-terenkripsi.aspx&amp;amp;title=Password+User+BlogEngine.NET+1.4+telah+Terenkripsi" target="_blank" title="Add Password User BlogEngine.NET 1.4 telah Terenkripsi to Live Bookmarks"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Live.16.gif" border="0"&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://geeks.netindonesia.net/aggbug.aspx?PostID=56809" width="1" height="1"&gt;</content><author><name>cahnom</name><uri>http://geeks.netindonesia.net/members/cahnom.aspx</uri></author><category term="BlogEngine" scheme="http://geeks.netindonesia.net/blogs/cahnom/archive/tags/BlogEngine/default.aspx" /></entry><entry><title>PayPal Verification: Akhirnya Verified Juga</title><link rel="alternate" type="text/html" href="http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/16/paypal-verification-akhirnya-verified-juga.aspx" /><id>http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/16/paypal-verification-akhirnya-verified-juga.aspx</id><published>2008-07-16T01:20:04Z</published><updated>2008-07-16T01:20:04Z</updated><content type="html">&lt;p&gt;Alhamdulillah, setelah beberapa bulan semenjak account bank Indonesia dapat menerima pembayaran dari PayPal, saya coba untuk verify beberapa debit card yang saya miliki. Satupun tidak ada yang dapat di-verify baik BCA, BNI dan terakhir Bank Niaga.&lt;/p&gt; &lt;p&gt;Karena semua debit card yang saya miliki tidak dapat digunakan akhirnya saya coba untuk apply kartu kredit Citibank. Setelah melalui proses verifikasi kartu kredit hampir satu bulan, akhirnya minggu kemaren kartu kredit diantar oleh kurir ke kantor. Dengan kartu kredit yang baru ini saya coba verify ke paypal. Setelah menunggu selama dua hari untuk mendapatkan empat digit PayPal code, akhirnya datang juga PayPal code di account detail citibank online saya.&lt;/p&gt; &lt;p&gt;&lt;a href="http://geeks.netindonesia.net/blogs/cahnom/WindowsLiveWriter/PayPalVerificationAkhirnyaVerifiedJuga_743C/image_2.png"&gt;&lt;img style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" height="222" alt="image" src="http://geeks.netindonesia.net/blogs/cahnom/WindowsLiveWriter/PayPalVerificationAkhirnyaVerifiedJuga_743C/image_thumb.png" width="244" border="0" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Sekarang saatnya untuk berburu dollar di dunia maya. Merdeka!!!&lt;/p&gt;
&lt;div class = "shareblock"&gt;&lt;strong&gt;Share this post: &lt;/strong&gt;&lt;a href="mailto:?body=Thought you might like this: http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/16/paypal-verification-akhirnya-verified-juga.aspx&amp;amp;subject=PayPal Verification: Akhirnya Verified Juga" target="_blank" title="Send via email"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Mail.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://www.facebook.com/sharer.php?u=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/16/paypal-verification-akhirnya-verified-juga.aspx&amp;amp;t=PayPal+Verification%3a+Akhirnya+Verified+Juga" target="_blank" title="Submit PayPal Verification: Akhirnya Verified Juga to DotNetKicks"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Facebook.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://del.icio.us/post?url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/16/paypal-verification-akhirnya-verified-juga.aspx&amp;amp;title=PayPal+Verification%3a+Akhirnya+Verified+Juga" target="_blank" title="Submit PayPal Verification: Akhirnya Verified Juga to del.icio.us"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Delicious.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://www.digg.com/submit?url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/16/paypal-verification-akhirnya-verified-juga.aspx&amp;amp;phase=2" target="_blank" title="Submit PayPal Verification: Akhirnya Verified Juga to digg.com"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Digg.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;mkt=en-us&amp;amp;url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/16/paypal-verification-akhirnya-verified-juga.aspx&amp;amp;title=PayPal+Verification%3a+Akhirnya+Verified+Juga" target="_blank" title="Add PayPal Verification: Akhirnya Verified Juga to Live Bookmarks"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Live.16.gif" border="0"&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://geeks.netindonesia.net/aggbug.aspx?PostID=56804" width="1" height="1"&gt;</content><author><name>cahnom</name><uri>http://geeks.netindonesia.net/members/cahnom.aspx</uri></author><category term="Paypal" scheme="http://geeks.netindonesia.net/blogs/cahnom/archive/tags/Paypal/default.aspx" /></entry><entry><title>Membuat LivePath Effect dengan Inkscape</title><link rel="alternate" type="text/html" href="http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/15/membuat-livepath-effect-dengan-inkscape.aspx" /><link rel="enclosure" type="application/x-zip-compressed" length="29173" href="http://geeks.netindonesia.net/blogs/cahnom/attachment/56739.ashx" /><id>http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/15/membuat-livepath-effect-dengan-inkscape.aspx</id><published>2008-07-15T10:51:00Z</published><updated>2008-07-15T10:51:00Z</updated><content type="html">&lt;p&gt;LivePath effect merupakan sebuah effect dari paduan banyak path sehingga menghasilkan garis-garis halus yang berjajar. Salah satu contoh LivePath effect seperti pada gambar berikut&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geeks.netindonesia.net/blogs/cahnom/WindowsLiveWriter/MembuatLivePathEffectdenganInkscpape_FB03/image_2.png"&gt;&lt;img style="BORDER-RIGHT:0px;BORDER-TOP:0px;BORDER-LEFT:0px;BORDER-BOTTOM:0px;" height="37" alt="image" src="http://geeks.netindonesia.net/blogs/cahnom/WindowsLiveWriter/MembuatLivePathEffectdenganInkscpape_FB03/image_thumb.png" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Kita dapat membuat effect tersebut dengan berbagai macam tools pembuat graphic vector seperti Corel Draw. Dalam hal ini saya akan gunakan tools gratis yaitu InkScape (&lt;a href="http://www.inkscape.org/"&gt;www.inkscape.org&lt;/a&gt;). InkScape sebenarnya adalah sebuah tool untuk menggambar graphic vektor SVG. Selain SVG dokumen yang dibuat dengan tool ini juga dapat disimpan dalam format XAML (Silverlight), PostScript, Enhanced Metafile (EMF), OpenDocument Drawing (ODG), dll.&lt;/p&gt;
&lt;p&gt;Untuk membuat gambar seperti di atas, langkah pertama adalah membuat background. Background terdiri dari dua persegi empat dengan degradasi kuning keemasan. Kita buat kotak pertama dengan ukuran 620px x 70px. Isi kotak warna gradient dari atas ke bawah dengan gradient stop #fbf49eff (atas) dan #e0a71dff (bawah).&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geeks.netindonesia.net/blogs/cahnom/WindowsLiveWriter/MembuatLivePathEffectdenganInkscpape_FB03/image_4.png"&gt;&lt;img style="BORDER-RIGHT:0px;BORDER-TOP:0px;BORDER-LEFT:0px;BORDER-BOTTOM:0px;" height="32" alt="image" src="http://geeks.netindonesia.net/blogs/cahnom/WindowsLiveWriter/MembuatLivePathEffectdenganInkscpape_FB03/image_thumb_1.png" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Kotak kedua dibuat dengan ukuran 620px x 15px yang diletakkan persis di bawah kotak pertama. Gradient untuk kotak kedua terdiri dari tiga gradient stop dari atas ke bawah #edcd5dff (posisi 0% / atas), #eddd5dff (posisi 20% / tengah) dan #fbf49eff (posisi 100% / bawah). Untuk membuat pemisah tipis antara kedua kotak, dibuat stroke thickness sebesar 0.5px dengan warna putih. Hasil dari kedua kotak tersebut seperti terlihat pada gambar berikut.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geeks.netindonesia.net/blogs/cahnom/WindowsLiveWriter/MembuatLivePathEffectdenganInkscpape_FB03/image_6.png"&gt;&lt;img style="BORDER-RIGHT:0px;BORDER-TOP:0px;BORDER-LEFT:0px;BORDER-BOTTOM:0px;" height="38" alt="image" src="http://geeks.netindonesia.net/blogs/cahnom/WindowsLiveWriter/MembuatLivePathEffectdenganInkscpape_FB03/image_thumb_2.png" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Langkah berikutnya adalah membuat livepath effect itu sendiri. Untuk pemisahkan antara background dengan livepath effect dibuat layer baru di atas background dengan nama LifePath. Selanjutnya buat dua garis sinus menggunakan freehand line tool dengan warna merah dan putih yang saling memotong satu sama lain. Buat tebal stroke untuk dua garis ini sebesar 0.5px dan opacity 0.5.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geeks.netindonesia.net/blogs/cahnom/WindowsLiveWriter/MembuatLivePathEffectdenganInkscpape_FB03/image_8.png"&gt;&lt;img style="BORDER-RIGHT:0px;BORDER-TOP:0px;BORDER-LEFT:0px;BORDER-BOTTOM:0px;" height="38" alt="image" src="http://geeks.netindonesia.net/blogs/cahnom/WindowsLiveWriter/MembuatLivePathEffectdenganInkscpape_FB03/image_thumb_3.png" width="244" border="0" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Langkah terakhir membuat effect livepath dengan menggunakan efek interpolasi path. Pilih (select) kedua path, pada menu Effect, Generate from Path, pilih Interpolate.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geeks.netindonesia.net/blogs/cahnom/WindowsLiveWriter/MembuatLivePathEffectdenganInkscpape_FB03/image_10.png"&gt;&lt;img style="BORDER-RIGHT:0px;BORDER-TOP:0px;BORDER-LEFT:0px;BORDER-BOTTOM:0px;" height="129" alt="image" src="http://geeks.netindonesia.net/blogs/cahnom/WindowsLiveWriter/MembuatLivePathEffectdenganInkscpape_FB03/image_thumb_4.png" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Pada jendela Interpolate, isi Exponent = 0.0, Interpolation steps = 128, Interpolation method = 2, Duplicate endpaths = unchecked, Interpolate style = checked. Setelah semua nilai diisi, tekan tombol Apply.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geeks.netindonesia.net/blogs/cahnom/WindowsLiveWriter/MembuatLivePathEffectdenganInkscpape_FB03/image_12.png"&gt;&lt;img style="BORDER-RIGHT:0px;BORDER-TOP:0px;BORDER-LEFT:0px;BORDER-BOTTOM:0px;" height="244" alt="image" src="http://geeks.netindonesia.net/blogs/cahnom/WindowsLiveWriter/MembuatLivePathEffectdenganInkscpape_FB03/image_thumb_5.png" width="193" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Hasil akhir dari langkah-langkah di atas adalah seperti terlihat pada gambar berikut.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geeks.netindonesia.net/blogs/cahnom/WindowsLiveWriter/MembuatLivePathEffectdenganInkscpape_FB03/image_14.png"&gt;&lt;img style="BORDER-RIGHT:0px;BORDER-TOP:0px;BORDER-LEFT:0px;BORDER-BOTTOM:0px;" height="38" alt="image" src="http://geeks.netindonesia.net/blogs/cahnom/WindowsLiveWriter/MembuatLivePathEffectdenganInkscpape_FB03/image_thumb_6.png" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Anda bisa menggunakan metode ini untuk membuat header sebuah halaman web atau untuk pemanis di dalam halaman. Source file Inkscape SVG dari tutorial ini dapat didownload dalam attachment &lt;a class="" href="http://geeks.netindonesia.net/blogs/cahnom/attachment/56739.ashx"&gt;di bawah&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Semoga bermanfaat.&lt;/p&gt;
&lt;div class = "shareblock"&gt;&lt;strong&gt;Share this post: &lt;/strong&gt;&lt;a href="mailto:?body=Thought you might like this: http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/15/membuat-livepath-effect-dengan-inkscape.aspx&amp;amp;subject=Membuat LivePath Effect dengan Inkscape" target="_blank" title="Send via email"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Mail.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://www.facebook.com/sharer.php?u=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/15/membuat-livepath-effect-dengan-inkscape.aspx&amp;amp;t=Membuat+LivePath+Effect+dengan+Inkscape" target="_blank" title="Submit Membuat LivePath Effect dengan Inkscape to DotNetKicks"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Facebook.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://del.icio.us/post?url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/15/membuat-livepath-effect-dengan-inkscape.aspx&amp;amp;title=Membuat+LivePath+Effect+dengan+Inkscape" target="_blank" title="Submit Membuat LivePath Effect dengan Inkscape to del.icio.us"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Delicious.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://www.digg.com/submit?url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/15/membuat-livepath-effect-dengan-inkscape.aspx&amp;amp;phase=2" target="_blank" title="Submit Membuat LivePath Effect dengan Inkscape to digg.com"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Digg.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;mkt=en-us&amp;amp;url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/15/membuat-livepath-effect-dengan-inkscape.aspx&amp;amp;title=Membuat+LivePath+Effect+dengan+Inkscape" target="_blank" title="Add Membuat LivePath Effect dengan Inkscape to Live Bookmarks"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Live.16.gif" border="0"&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://geeks.netindonesia.net/aggbug.aspx?PostID=56739" width="1" height="1"&gt;</content><author><name>cahnom</name><uri>http://geeks.netindonesia.net/members/cahnom.aspx</uri></author><category term="Silverlight" scheme="http://geeks.netindonesia.net/blogs/cahnom/archive/tags/Silverlight/default.aspx" /><category term="Tips" scheme="http://geeks.netindonesia.net/blogs/cahnom/archive/tags/Tips/default.aspx" /><category term="InkScape" scheme="http://geeks.netindonesia.net/blogs/cahnom/archive/tags/InkScape/default.aspx" /><category term="Web Design" scheme="http://geeks.netindonesia.net/blogs/cahnom/archive/tags/Web+Design/default.aspx" /></entry><entry><title>Deserialize JSON String ke Strong-Type Object.</title><link rel="alternate" type="text/html" href="http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/10/Deserialize_2D00_JSON_2D00_String_2D00_ke_2D00_Strong_2D00_Type_2D00_Object.aspx" /><id>http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/10/Deserialize_2D00_JSON_2D00_String_2D00_ke_2D00_Strong_2D00_Type_2D00_Object.aspx</id><published>2008-07-10T07:13:32Z</published><updated>2008-07-10T07:13:32Z</updated><content type="html">&lt;p&gt;Tulisan ini merupakan kelanjutan dari post sebelumnya tentang &lt;a href="http://www.masykur.web.id/post/json-serializer-amp-deserializer.aspx" target="_blank"&gt;Json Serializer dan Deserializer&lt;/a&gt;. Pada tulisan sebelumnya, string JSON dideserialize ke dalam Generic Dictionary. Kekurangan dari metode tersebut adalah kita tidak bisa menggunakan strong-type object untuk deserialize JSON. Metode tersebut juga sudah dianggap usang oleh .NET Framework 3.5 karena dalam framework tersebut sudah disediakan pengganti System.Web.Script.Serialization.JavaScriptSerializer yaitu System.Runtime.Serialization.Json.DataContractJsonSerializer. &lt;/p&gt; &lt;p&gt;Untuk dapat menggunakan System.Runtime.Serialization.Json.DataContractJsonSerializer perlu menambahkan dua assembly reference ke dalam project yaitu: System.Runtime.Serialization (butuh .NET Framework 3.0) dan System.ServiceModel.Web (butuh .NET Framework 3.5). Setelah kedua assembly ini direferensikan, beberapa hal yang perlu disiapkan diantaranya.&lt;/p&gt; &lt;p&gt;1. Tambahkan kedua namespace berikut &lt;/p&gt; &lt;p&gt;&lt;/p&gt; &lt;div class="wlWriterSmartContent" id="scid:57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:ac52c6c1-3d66-408a-857a-d46efc6789a7" style="padding-right:0px;display:inline;padding-left:0px;float:none;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;pre style="background-color:White;overflow:auto;"&gt;&lt;div&gt;&lt;span style="color:#0000FF;"&gt;using&lt;/span&gt;&lt;span style="color:#000000;"&gt; System.Runtime.Serialization.Json;
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;using&lt;/span&gt;&lt;span style="color:#000000;"&gt; System.Runtime.Serialization;&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;2. Buat class yang digunakan untuk men-deserialize JSON string. &lt;/p&gt;
&lt;p&gt;Dalam contoh ini dibuat class berdasarkan JSON yang sama seperti tulisan sebelumnya (&lt;a href="http://www.masykur.web.id/post/json-serializer-amp-deserializer.aspx" target="_blank"&gt;Json Serializer dan Deserializer&lt;/a&gt;). Struktur string JSON tersebut adalah:&lt;/p&gt;
&lt;div class="wlWriterSmartContent" id="scid:57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:3d3d0392-1d74-46fd-9b33-9e31a177f013" style="padding-right:0px;display:inline;padding-left:0px;float:none;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;pre style="background-color:White;overflow:auto;"&gt;&lt;div&gt;&lt;span style="color:#0000FF;"&gt;var&lt;/span&gt;&lt;span style="color:#000000;"&gt; dateFormat &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;lt;%= GlobalCallCenter.Common.CallCenterConfig.Get(&amp;quot;SHORT_DATE_FORMAT&amp;quot;) %&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;;
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;var&lt;/span&gt;&lt;span style="color:#000000;"&gt; filter &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; {
    instance: $get(&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;lt;%= instanceList.ClientID %&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;).value,
    requestNo: $get(&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;lt;%= requestNoTextBox.ClientID %&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;).value,
    category: $get(&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;lt;%= categoryList.ClientID %&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;).value,
    itemCategory: $get(&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;lt;%= itemAffectedList.ClientID %&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;).value,
    ticketGroup: $get(&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;lt;%= ticketGroupList.ClientID %&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;).value,
    status: $get(&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;lt;%= statusList.ClientID %&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;).value,
    requestType: $get(&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;lt;%= typeList.ClientID %&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;).value,
    startDate: Date.parseLocale($get(&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;lt;%= dateFromTextBox.ClientID %&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;).value, dateFormat),
    finishDate: Date.parseLocale($get(&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;lt;%= dateToTextBox.ClientID %&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;).value, dateFormat),
    requestedFor: $get(&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;requestedForEmployeeId&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;).value,
    assigneeId: ($get(&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;lt;%= assigneeForEmployeeId.ClientID %&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;) &lt;/span&gt;&lt;span style="color:#000000;"&gt;!=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;null&lt;/span&gt;&lt;span style="color:#000000;"&gt;) &lt;/span&gt;&lt;span style="color:#000000;"&gt;?&lt;/span&gt;&lt;span style="color:#000000;"&gt; $get(&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;lt;%= assigneeForEmployeeId.ClientID %&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;).value : $get(&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;lt;%= assigneeForEmployeeIdLabel.ClientID %&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;).innerHTML
};
&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;Dari JSON tersebut di atas, dibuat class sebagai berikut:&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;div class="wlWriterSmartContent" id="scid:57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:6d73509f-0e12-4df9-acbe-218243b0b284" style="padding-right:0px;display:inline;padding-left:0px;float:none;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;pre style="background-color:White;overflow:auto;"&gt;&lt;div&gt;&lt;span style="color:#000000;"&gt;[DataContract(Name &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#800000;"&gt;Filter&lt;/span&gt;&lt;span style="color:#800000;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#000000;"&gt;, Namespace &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;"&gt;&amp;quot;&amp;quot;&lt;/span&gt;&lt;span style="color:#000000;"&gt;)] 
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;protected&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;internal&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;class&lt;/span&gt;&lt;span style="color:#000000;"&gt; Filter {
    [DataMember(Name &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#800000;"&gt;instance&lt;/span&gt;&lt;span style="color:#800000;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#000000;"&gt;, Order &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800080;"&gt;1&lt;/span&gt;&lt;span style="color:#000000;"&gt;)] 
    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;public&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;string&lt;/span&gt;&lt;span style="color:#000000;"&gt; Instance { &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;get&lt;/span&gt;&lt;span style="color:#000000;"&gt;; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;set&lt;/span&gt;&lt;span style="color:#000000;"&gt;; }

    [DataMember(Name &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#800000;"&gt;requestNo&lt;/span&gt;&lt;span style="color:#800000;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#000000;"&gt;, Order &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800080;"&gt;2&lt;/span&gt;&lt;span style="color:#000000;"&gt;)]
    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;public&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;string&lt;/span&gt;&lt;span style="color:#000000;"&gt; RequestNo { &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;get&lt;/span&gt;&lt;span style="color:#000000;"&gt;; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;set&lt;/span&gt;&lt;span style="color:#000000;"&gt;; }

    [DataMember(Name &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#800000;"&gt;category&lt;/span&gt;&lt;span style="color:#800000;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#000000;"&gt;, Order &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800080;"&gt;3&lt;/span&gt;&lt;span style="color:#000000;"&gt;)]
    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;public&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;string&lt;/span&gt;&lt;span style="color:#000000;"&gt; Category { &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;get&lt;/span&gt;&lt;span style="color:#000000;"&gt;; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;set&lt;/span&gt;&lt;span style="color:#000000;"&gt;; }

    [DataMember(Name &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#800000;"&gt;itemCategory&lt;/span&gt;&lt;span style="color:#800000;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#000000;"&gt;, Order &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800080;"&gt;4&lt;/span&gt;&lt;span style="color:#000000;"&gt;)]
    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;public&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;string&lt;/span&gt;&lt;span style="color:#000000;"&gt; ItemCategory { &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;get&lt;/span&gt;&lt;span style="color:#000000;"&gt;; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;set&lt;/span&gt;&lt;span style="color:#000000;"&gt;; }

    [DataMember(Name &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#800000;"&gt;ticketGroup&lt;/span&gt;&lt;span style="color:#800000;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#000000;"&gt;, Order &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800080;"&gt;5&lt;/span&gt;&lt;span style="color:#000000;"&gt;)]
    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;public&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;string&lt;/span&gt;&lt;span style="color:#000000;"&gt; TicketGroup { &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;get&lt;/span&gt;&lt;span style="color:#000000;"&gt;; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;set&lt;/span&gt;&lt;span style="color:#000000;"&gt;; }

    [DataMember(Name &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#800000;"&gt;status&lt;/span&gt;&lt;span style="color:#800000;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#000000;"&gt;, Order &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800080;"&gt;6&lt;/span&gt;&lt;span style="color:#000000;"&gt;)]
    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;public&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;string&lt;/span&gt;&lt;span style="color:#000000;"&gt; Status { &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;get&lt;/span&gt;&lt;span style="color:#000000;"&gt;; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;set&lt;/span&gt;&lt;span style="color:#000000;"&gt;; }

    [DataMember(Name &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#800000;"&gt;requestType&lt;/span&gt;&lt;span style="color:#800000;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#000000;"&gt;, Order &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800080;"&gt;7&lt;/span&gt;&lt;span style="color:#000000;"&gt;)]
    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;public&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;string&lt;/span&gt;&lt;span style="color:#000000;"&gt; RequestType { &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;get&lt;/span&gt;&lt;span style="color:#000000;"&gt;; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;set&lt;/span&gt;&lt;span style="color:#000000;"&gt;; }

    [DataMember(Name &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#800000;"&gt;startDate&lt;/span&gt;&lt;span style="color:#800000;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#000000;"&gt;, Order &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800080;"&gt;9&lt;/span&gt;&lt;span style="color:#000000;"&gt;)]
    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;public&lt;/span&gt;&lt;span style="color:#000000;"&gt; DateTime StartDate { &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;get&lt;/span&gt;&lt;span style="color:#000000;"&gt;; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;set&lt;/span&gt;&lt;span style="color:#000000;"&gt;; }

    [DataMember(Name &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#800000;"&gt;finishDate&lt;/span&gt;&lt;span style="color:#800000;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#000000;"&gt;, Order &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800080;"&gt;10&lt;/span&gt;&lt;span style="color:#000000;"&gt;)]
    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;public&lt;/span&gt;&lt;span style="color:#000000;"&gt; DateTime FinishDate { &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;get&lt;/span&gt;&lt;span style="color:#000000;"&gt;; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;set&lt;/span&gt;&lt;span style="color:#000000;"&gt;; }

    [DataMember(Name &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#800000;"&gt;requestedFor&lt;/span&gt;&lt;span style="color:#800000;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#000000;"&gt;, Order &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800080;"&gt;10&lt;/span&gt;&lt;span style="color:#000000;"&gt;)]
    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;public&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;string&lt;/span&gt;&lt;span style="color:#000000;"&gt; RequestedFor { &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;get&lt;/span&gt;&lt;span style="color:#000000;"&gt;; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;set&lt;/span&gt;&lt;span style="color:#000000;"&gt;; }
    
    [DataMember(Name &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800000;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#800000;"&gt;assigneeId&lt;/span&gt;&lt;span style="color:#800000;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#000000;"&gt;, Order &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#800080;"&gt;10&lt;/span&gt;&lt;span style="color:#000000;"&gt;)]
    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;public&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;string&lt;/span&gt;&lt;span style="color:#000000;"&gt; AssigneeId { &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;get&lt;/span&gt;&lt;span style="color:#000000;"&gt;; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;set&lt;/span&gt;&lt;span style="color:#000000;"&gt;; }
}&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;3. Buat implementasi deserialization.&lt;/p&gt;
&lt;p&gt;Seperti pada tulisan sebelumnya di &lt;a href="http://www.masykur.web.id/post/json-serializer-amp-deserializer.aspx" target="_blank"&gt;Json Serializer dan Deserializer&lt;/a&gt;, saya gunakan contoh yang sama yaitu event callback pada Janus Grid sebagai berikut.&lt;/p&gt;
&lt;div class="wlWriterSmartContent" id="scid:57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:0a59cb1b-a467-4fcc-9416-36eaefa1193b" style="padding-right:0px;display:inline;padding-left:0px;float:none;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;pre style="background-color:White;overflow:auto;"&gt;&lt;div&gt;&lt;span style="color:#0000FF;"&gt;protected&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;void&lt;/span&gt;&lt;span style="color:#000000;"&gt; GridEX1_CustomCallBack(&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;object&lt;/span&gt;&lt;span style="color:#000000;"&gt; sender, Janus.Web.Common.CustomCallBackEventArgs e)
{
    var edata &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; System.Web.HttpUtility.UrlDecode(e.EventData.ToString());
    System.IO.MemoryStream stream &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;new&lt;/span&gt;&lt;span style="color:#000000;"&gt; System.IO.MemoryStream(System.Text.Encoding.UTF8.GetBytes(edata.ToString()));
    DataContractJsonSerializer serializer &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;new&lt;/span&gt;&lt;span style="color:#000000;"&gt; DataContractJsonSerializer(&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;typeof&lt;/span&gt;&lt;span style="color:#000000;"&gt;(Filter));
    Filter filter &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; (Filter)serializer.ReadObject(stream);
}
&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Dengan menggunakan strong-type kita langsung dapat mengakses property dari class tersebut, seperti terlihat pada gambar berikut.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geeks.netindonesia.net/blogs/cahnom/WindowsLiveWriter/DeserializeJSONStringkeStrongTypeObject_C4B9/image_2.png"&gt;&lt;img style="border-top-width:0px;border-left-width:0px;border-bottom-width:0px;border-right-width:0px;" height="300" alt="image" src="http://geeks.netindonesia.net/blogs/cahnom/WindowsLiveWriter/DeserializeJSONStringkeStrongTypeObject_C4B9/image_thumb.png" width="528" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Berbeda dari tulisan sebelumnya, dengan menggunakan strong-type object, semua property dapat diakses sesuai dengan tipe yang sudah didefinisikan.&lt;/p&gt;
&lt;p&gt;Semoga bermanfaat.&lt;/p&gt;
&lt;div class = "shareblock"&gt;&lt;strong&gt;Share this post: &lt;/strong&gt;&lt;a href="mailto:?body=Thought you might like this: http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/10/Deserialize_2D00_JSON_2D00_String_2D00_ke_2D00_Strong_2D00_Type_2D00_Object.aspx&amp;amp;subject=Deserialize JSON String ke Strong-Type Object." target="_blank" title="Send via email"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Mail.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://www.facebook.com/sharer.php?u=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/10/Deserialize_2D00_JSON_2D00_String_2D00_ke_2D00_Strong_2D00_Type_2D00_Object.aspx&amp;amp;t=Deserialize+JSON+String+ke+Strong-Type+Object." target="_blank" title="Submit Deserialize JSON String ke Strong-Type Object. to DotNetKicks"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Facebook.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://del.icio.us/post?url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/10/Deserialize_2D00_JSON_2D00_String_2D00_ke_2D00_Strong_2D00_Type_2D00_Object.aspx&amp;amp;title=Deserialize+JSON+String+ke+Strong-Type+Object." target="_blank" title="Submit Deserialize JSON String ke Strong-Type Object. to del.icio.us"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Delicious.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://www.digg.com/submit?url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/10/Deserialize_2D00_JSON_2D00_String_2D00_ke_2D00_Strong_2D00_Type_2D00_Object.aspx&amp;amp;phase=2" target="_blank" title="Submit Deserialize JSON String ke Strong-Type Object. to digg.com"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Digg.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;mkt=en-us&amp;amp;url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/10/Deserialize_2D00_JSON_2D00_String_2D00_ke_2D00_Strong_2D00_Type_2D00_Object.aspx&amp;amp;title=Deserialize+JSON+String+ke+Strong-Type+Object." target="_blank" title="Add Deserialize JSON String ke Strong-Type Object. to Live Bookmarks"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Live.16.gif" border="0"&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://geeks.netindonesia.net/aggbug.aspx?PostID=55924" width="1" height="1"&gt;</content><author><name>cahnom</name><uri>http://geeks.netindonesia.net/members/cahnom.aspx</uri></author><category term="ASP.NET AJAX" scheme="http://geeks.netindonesia.net/blogs/cahnom/archive/tags/ASP.NET+AJAX/default.aspx" /><category term="JSON" scheme="http://geeks.netindonesia.net/blogs/cahnom/archive/tags/JSON/default.aspx" /><category term="Javascript" scheme="http://geeks.netindonesia.net/blogs/cahnom/archive/tags/Javascript/default.aspx" /></entry><entry><title>JSON Serializer &amp; Deserializer</title><link rel="alternate" type="text/html" href="http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/10/json-serializer-amp-deserializer.aspx" /><id>http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/10/json-serializer-amp-deserializer.aspx</id><published>2008-07-10T02:43:55Z</published><updated>2008-07-10T02:43:55Z</updated><content type="html">&lt;p&gt;Saya ingin berbagi sedikit tips mengenai JSON serializer dan deserializer yang ada di ASP.NET AJAX. Dengan menggunakan ASP.NET Ajax pertukaran data antara client (JavaScript) dengan server menjadi gampang banget. Kita tidak perlu lagi pake XMLyang rumit. Dengan JSON data mudah banget di-parse.  &lt;p&gt;Contoh code di client (JS): &lt;/p&gt; &lt;div class="wlWriterSmartContent" id="scid:57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:5b1c798c-4725-4309-84f9-2653d34cde6b" style="padding-right:0px;display:inline;padding-left:0px;float:none;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;pre style="background-color:White;overflow:auto;"&gt;&lt;div&gt;&lt;span style="color:#0000FF;"&gt;function&lt;/span&gt;&lt;span style="color:#000000;"&gt; getFilterData() { 
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;var&lt;/span&gt;&lt;span style="color:#000000;"&gt; dateFormat &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;lt;%= HelpdeskSystem.DateFormat %&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;; 
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;var&lt;/span&gt;&lt;span style="color:#000000;"&gt; filter &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; { 
            instance: $get(&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;lt;%= instanceList.ClientID %&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;).value, 
            requestNo: $get(&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;lt;%= requestNoTextBox.ClientID %&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;).value, 
            category: $get(&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;lt;%= categoryList.ClientID %&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;).value, 
            itemCategory: $get(&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;lt;%= itemAffectedList.ClientID %&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;).value, 
            ticketGroup: $get(&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;lt;%= ticketGroupList.ClientID %&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;).value, 
            status: $get(&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;lt;%= statusList.ClientID %&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;).value, 
            requestType: $get(&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;lt;%= typeList.ClientID %&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;).value, 
            startDate: Date.parseLocale($get(&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;lt;%= dateFromTextBox.ClientID %&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;).value, dateFormat), 
            finishDate: Date.parseLocale($get(&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;lt;%= dateToTextBox.ClientID %&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;).value, dateFormat), 
            requestedFor: $get(&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;requestedForEmployeeId&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;).value, 
            assigneeId: ($get(&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;lt;%= assigneeForEmployeeId.ClientID %&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;) &lt;/span&gt;&lt;span style="color:#000000;"&gt;!=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;null&lt;/span&gt;&lt;span style="color:#000000;"&gt;) &lt;/span&gt;&lt;span style="color:#000000;"&gt;?&lt;/span&gt;&lt;span style="color:#000000;"&gt; $get(&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;lt;%= assigneeForEmployeeId.ClientID %&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;).value : $get(&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;lt;%= assigneeForEmployeeIdLabel.ClientID %&amp;gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;#39;&lt;/span&gt;&lt;span style="color:#000000;"&gt;).innerHTML 
        }; 
&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;return&lt;/span&gt;&lt;span style="color:#000000;"&gt; Sys.Serialization.JavaScriptSerializer.serialize(filter); &lt;/span&gt;&lt;span style="color:#008000;"&gt;//&lt;/span&gt;&lt;span style="color:#008000;"&gt; Serialize object to JSON string &lt;/span&gt;&lt;span style="color:#008000;"&gt;
&lt;/span&gt;&lt;span style="color:#000000;"&gt;    } &lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Di server side (C#), tinggal di-deserialize. Dalam hal ini saya pake data JSON tersebut pada event CallBack Janus Grid: &lt;/p&gt;
&lt;div class="wlWriterSmartContent" id="scid:57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:4601f696-a32f-4f00-9042-49ad96fc38f0" style="padding-right:0px;display:inline;padding-left:0px;float:none;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;pre style="background-color:White;overflow:auto;"&gt;&lt;div&gt;&lt;span style="color:#0000FF;"&gt;protected&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;void&lt;/span&gt;&lt;span style="color:#000000;"&gt; GridEX1_CustomCallBack(&lt;/span&gt;&lt;span style="color:#0000FF;"&gt;object&lt;/span&gt;&lt;span style="color:#000000;"&gt; sender, Janus.Web.Common.CustomCallBackEventArgs e) 
{ 
    System.Web.Script.Serialization.JavaScriptSerializer jsSerializer &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;new&lt;/span&gt;&lt;span style="color:#000000;"&gt; System.Web.Script.Serialization.JavaScriptSerializer(); 
    var edata &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; System.Web.HttpUtility.UrlDecode(e.EventData.ToString()); 
    var data &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; jsSerializer.DeserializeObject(edata); 
    &lt;/span&gt;&lt;span style="color:#008000;"&gt;//&lt;/span&gt;&lt;span style="color:#008000;"&gt; data selanjutnya di prosess di sini&lt;/span&gt;&lt;span style="color:#008000;"&gt;
&lt;/span&gt;&lt;span style="color:#000000;"&gt;} &lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Simple banget. 
&lt;p&gt;Hasil deserialize object ketika debugging tersebut dapat dilihat seperti gambar di bawah. 
&lt;p&gt;&lt;a href="http://geeks.netindonesia.net/blogs/cahnom/WindowsLiveWriter/JSONSerializerDeserializer_875B/image_2.png"&gt;&lt;img style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" height="305" alt="image" src="http://geeks.netindonesia.net/blogs/cahnom/WindowsLiveWriter/JSONSerializerDeserializer_875B/image_thumb.png" width="660" border="0" /&gt;&lt;/a&gt; 
&lt;p&gt;Dari gambar tersebut, string JSON telah di-deserialize menjadi object (string, Date, dll). Mudah bukan? 
&lt;p&gt;Semoga bermanfaat.&lt;/p&gt;
&lt;div class = "shareblock"&gt;&lt;strong&gt;Share this post: &lt;/strong&gt;&lt;a href="mailto:?body=Thought you might like this: http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/10/json-serializer-amp-deserializer.aspx&amp;amp;subject=JSON Serializer &amp;amp; Deserializer" target="_blank" title="Send via email"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Mail.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://www.facebook.com/sharer.php?u=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/10/json-serializer-amp-deserializer.aspx&amp;amp;t=JSON+Serializer+%26amp%3b+Deserializer" target="_blank" title="Submit JSON Serializer &amp;amp; Deserializer to DotNetKicks"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Facebook.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://del.icio.us/post?url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/10/json-serializer-amp-deserializer.aspx&amp;amp;title=JSON+Serializer+%26amp%3b+Deserializer" target="_blank" title="Submit JSON Serializer &amp;amp; Deserializer to del.icio.us"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Delicious.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://www.digg.com/submit?url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/10/json-serializer-amp-deserializer.aspx&amp;amp;phase=2" target="_blank" title="Submit JSON Serializer &amp;amp; Deserializer to digg.com"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Digg.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;mkt=en-us&amp;amp;url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/10/json-serializer-amp-deserializer.aspx&amp;amp;title=JSON+Serializer+%26amp%3b+Deserializer" target="_blank" title="Add JSON Serializer &amp;amp; Deserializer to Live Bookmarks"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Live.16.gif" border="0"&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://geeks.netindonesia.net/aggbug.aspx?PostID=55822" width="1" height="1"&gt;</content><author><name>cahnom</name><uri>http://geeks.netindonesia.net/members/cahnom.aspx</uri></author><category term="ASP.NET AJAX" scheme="http://geeks.netindonesia.net/blogs/cahnom/archive/tags/ASP.NET+AJAX/default.aspx" /><category term="JSON" scheme="http://geeks.netindonesia.net/blogs/cahnom/archive/tags/JSON/default.aspx" /><category term="Javascript" scheme="http://geeks.netindonesia.net/blogs/cahnom/archive/tags/Javascript/default.aspx" /><category term="Tips" scheme="http://geeks.netindonesia.net/blogs/cahnom/archive/tags/Tips/default.aspx" /></entry><entry><title>Mencegah Print Screen Halaman Web</title><link rel="alternate" type="text/html" href="http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/02/mencegah-print-screen-halaman-web.aspx" /><id>http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/02/mencegah-print-screen-halaman-web.aspx</id><published>2008-07-02T04:27:42Z</published><updated>2008-07-02T04:27:42Z</updated><content type="html">&lt;p&gt;Hak Atas Kekayaan Intelektual (HAKI) dan Hak Cipta merupakan suatu hak yang harus ditegakkan. Susah-susah membuat tulisan berdasarkan hasil pemikiran sendiri, dengan mudah dalam sekejap dijiplak orang lain dan diaku sebagai hasil karya sendiri.&lt;br /&gt;Sering kali dijumpai beberapa situs tidak bisa disalin halaman web-nya. Orang yang memang punya niat mencuri dengan berbagai cara tetep bisa menyalin isinya dengan cara print-screen, baik dengan tombol yang ada di keyboard maupun dengan software. Dalam tulisan ini akan saya akan membagi trik untuk mencegah tindakan print-screen terhadap halaman web yang kita buat.&lt;br /&gt;Untuk mencegah tindakan print-scrint salah satunya adalah dengan cara menghilangkan isi clipboard secara berkala. Cara tersebut dapat dilakukan dengan script berikut.&lt;/p&gt; &lt;div class="wlWriterSmartContent" id="scid:57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:9acb55be-519a-426d-9975-c28b09d26c6a" style="padding-right:0px;display:inline;padding-left:0px;float:none;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;pre style="background-color:White;overflow:auto;"&gt;&lt;div&gt;&lt;span style="color:#0000FF;"&gt;function&lt;/span&gt;&lt;span style="color:#000000;"&gt; clearImage()
{
    r &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; window.clipboardData.clearData(&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#000000;"&gt;Image&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#000000;"&gt;);
}
ci &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; setInterval(&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#000000;"&gt;clearImage()&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#000000;"&gt;, &lt;/span&gt;&lt;span style="color:#000000;"&gt;10&lt;/span&gt;&lt;span style="color:#000000;"&gt;);
&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Code tersebut akan menghapus data clipboard dengan type Image karena hasil print-screen akan disimpan di clipboard dalam bentuk image.&lt;br /&gt;Catatan: Script ini hanya berjalan di Internet Explorer.&lt;br /&gt;Untuk memastikan bahwa ini berjalan di IE dan tidak menimbulkan error di browser lain perlu adanya pengecekan terlebih dahulu. Script di atas dapat diubah menjadi.&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;div class="wlWriterSmartContent" id="scid:57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:0bfe0d8a-1c77-4981-80ac-6ab71f08bfda" style="padding-right:0px;display:inline;padding-left:0px;float:none;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;pre style="background-color:White;overflow:auto;"&gt;&lt;div&gt;&lt;span style="color:#0000FF;"&gt;function&lt;/span&gt;&lt;span style="color:#000000;"&gt; clearImage()
{
    &lt;/span&gt;&lt;span style="color:#0000FF;"&gt;if&lt;/span&gt;&lt;span style="color:#000000;"&gt; (window.clipboardData) {
        r &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; window.clipboardData.clearData(&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#000000;"&gt;Image&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#000000;"&gt;);
    }
}
ci &lt;/span&gt;&lt;span style="color:#000000;"&gt;=&lt;/span&gt;&lt;span style="color:#000000;"&gt; setInterval(&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#000000;"&gt;clearImage()&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;quot;&lt;/span&gt;&lt;span style="color:#000000;"&gt;, &lt;/span&gt;&lt;span style="color:#000000;"&gt;10&lt;/span&gt;&lt;span style="color:#000000;"&gt;);&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;&lt;br /&gt;Script di atas saya dapatkan dari dendy=at=ins.co.id di milis PHPUG.&lt;br /&gt;Semoga bermanfaat.
&lt;div class = "shareblock"&gt;&lt;strong&gt;Share this post: &lt;/strong&gt;&lt;a href="mailto:?body=Thought you might like this: http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/02/mencegah-print-screen-halaman-web.aspx&amp;amp;subject=Mencegah Print Screen Halaman Web" target="_blank" title="Send via email"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Mail.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://www.facebook.com/sharer.php?u=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/02/mencegah-print-screen-halaman-web.aspx&amp;amp;t=Mencegah+Print+Screen+Halaman+Web" target="_blank" title="Submit Mencegah Print Screen Halaman Web to DotNetKicks"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Facebook.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://del.icio.us/post?url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/02/mencegah-print-screen-halaman-web.aspx&amp;amp;title=Mencegah+Print+Screen+Halaman+Web" target="_blank" title="Submit Mencegah Print Screen Halaman Web to del.icio.us"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Delicious.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://www.digg.com/submit?url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/02/mencegah-print-screen-halaman-web.aspx&amp;amp;phase=2" target="_blank" title="Submit Mencegah Print Screen Halaman Web to digg.com"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Digg.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;mkt=en-us&amp;amp;url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/07/02/mencegah-print-screen-halaman-web.aspx&amp;amp;title=Mencegah+Print+Screen+Halaman+Web" target="_blank" title="Add Mencegah Print Screen Halaman Web to Live Bookmarks"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Live.16.gif" border="0"&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://geeks.netindonesia.net/aggbug.aspx?PostID=54598" width="1" height="1"&gt;</content><author><name>cahnom</name><uri>http://geeks.netindonesia.net/members/cahnom.aspx</uri></author><category term="Javascript" scheme="http://geeks.netindonesia.net/blogs/cahnom/archive/tags/Javascript/default.aspx" /><category term="Tips" scheme="http://geeks.netindonesia.net/blogs/cahnom/archive/tags/Tips/default.aspx" /></entry><entry><title>Menambahkan Daftar Assembly Supaya Tampil di Dialog Add References Visual Studio</title><link rel="alternate" type="text/html" href="http://geeks.netindonesia.net/blogs/cahnom/archive/2008/06/16/Menambahkan_2D00_Daftar_2D00_Assembly_2D00_Supaya_2D00_Tampil_2D00_di_2D00_Dialog_2D00_Add_2D00_References_2D00_Visual_2D00_Studio.aspx" /><id>http://geeks.netindonesia.net/blogs/cahnom/archive/2008/06/16/Menambahkan_2D00_Daftar_2D00_Assembly_2D00_Supaya_2D00_Tampil_2D00_di_2D00_Dialog_2D00_Add_2D00_References_2D00_Visual_2D00_Studio.aspx</id><published>2008-06-16T04:12:24Z</published><updated>2008-06-16T04:12:24Z</updated><content type="html">&lt;p&gt;GACUTIL merupakan sebuah tool untuk mendaftarkan assembly ke Global Assembly Cache (GAC). Untuk mendaftarkannya ketik gacutil /i &amp;lt;nama file dll&amp;gt; seperti pada gambar berikut.&lt;/p&gt; &lt;p&gt;&lt;a href="http://geeks.netindonesia.net/blogs/cahnom/WindowsLiveWriter/MenambahkanDaftarAssemblySupayaTampildiD_8FFD/image_8.png"&gt;&lt;img style="border-top-width:0px;border-left-width:0px;border-bottom-width:0px;border-right-width:0px;" height="327" alt="image" src="http://geeks.netindonesia.net/blogs/cahnom/WindowsLiveWriter/MenambahkanDaftarAssemblySupayaTampildiD_8FFD/image_thumb_3.png" width="644" border="0" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Dengan menambahkan assembly ke dalam GAC, dll tersebut dapat diakses oleh seluruh aplikasi yang ada dalam satu mesin. Jadi tidak perlu menyalin ke semua folder aplikasi yang dibuat.&lt;/p&gt; &lt;p&gt;Ada sedikit permasalahan ketika membuat aplikasi dengan reference ke GAC, dengan menggunakan GACUTIL assembly yang didaftarkan tidak otomatis muncul ke dalam dialog Add Reference Visual Studio seperti terlihat pada gambar berikut.&lt;/p&gt; &lt;p&gt;&lt;a href="http://geeks.netindonesia.net/blogs/cahnom/WindowsLiveWriter/MenambahkanDaftarAssemblySupayaTampildiD_8FFD/image_2.png"&gt;&lt;img style="border-top-width:0px;border-left-width:0px;border-bottom-width:0px;border-right-width:0px;" height="394" alt="image" src="http://geeks.netindonesia.net/blogs/cahnom/WindowsLiveWriter/MenambahkanDaftarAssemblySupayaTampildiD_8FFD/image_thumb.png" width="471" border="0" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Berdasarkan informasi dari Mario -- teman satu kantor -- bahwa untuk memunculkan assembly yang didaftarkan di GAC di dialog Add Reference Visual Studio perlu menambahkan registry key. Buka registry editor dan tambahkan key di dalam HKLM\Software\Microsoft\.NETFramework\AssemblyFolders\ dengan nama sesuai dengan nama Assembly dengan value path assembly yang bersangkutan. &lt;/p&gt; &lt;p&gt;Contoh: Untuk menambahkan sebuah 3rd party library Kamoro.Library.ServerControlsLibrary, tambahkan key di dalam HKLM\Software\Microsoft\.NETFramework\AssemblyFolders\&lt;/p&gt; &lt;p&gt;Name: Kamoro Server Controls Library&lt;/p&gt; &lt;p&gt;Value: C:\Program Files\Kamoro\Controls\&lt;/p&gt; &lt;p&gt;&lt;a href="http://geeks.netindonesia.net/blogs/cahnom/WindowsLiveWriter/MenambahkanDaftarAssemblySupayaTampildiD_8FFD/image_10.png"&gt;&lt;img style="border-top-width:0px;border-left-width:0px;border-bottom-width:0px;border-right-width:0px;" height="725" alt="image" src="http://geeks.netindonesia.net/blogs/cahnom/WindowsLiveWriter/MenambahkanDaftarAssemblySupayaTampildiD_8FFD/image_thumb_4.png" width="512" border="0" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Setelah key ditambahkan, restart Visual Studio dan assembly yang baru didaftarkan dapat dilihat di daftar assembly pada dialog Add Reference Visual Studio seperti yang terlihat pada gambar di bawah.&lt;/p&gt; &lt;p&gt;&lt;a href="http://geeks.netindonesia.net/blogs/cahnom/WindowsLiveWriter/MenambahkanDaftarAssemblySupayaTampildiD_8FFD/image_4.png"&gt;&lt;img style="border-top-width:0px;border-left-width:0px;border-bottom-width:0px;border-right-width:0px;" height="394" alt="image" src="http://geeks.netindonesia.net/blogs/cahnom/WindowsLiveWriter/MenambahkanDaftarAssemblySupayaTampildiD_8FFD/image_thumb_1.png" width="471" border="0" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Semoga bermanfaat.&lt;/p&gt;
&lt;div class = "shareblock"&gt;&lt;strong&gt;Share this post: &lt;/strong&gt;&lt;a href="mailto:?body=Thought you might like this: http://geeks.netindonesia.net/blogs/cahnom/archive/2008/06/16/Menambahkan_2D00_Daftar_2D00_Assembly_2D00_Supaya_2D00_Tampil_2D00_di_2D00_Dialog_2D00_Add_2D00_References_2D00_Visual_2D00_Studio.aspx&amp;amp;subject=Menambahkan Daftar Assembly Supaya Tampil di Dialog Add References Visual Studio" target="_blank" title="Send via email"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Mail.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://www.facebook.com/sharer.php?u=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/06/16/Menambahkan_2D00_Daftar_2D00_Assembly_2D00_Supaya_2D00_Tampil_2D00_di_2D00_Dialog_2D00_Add_2D00_References_2D00_Visual_2D00_Studio.aspx&amp;amp;t=Menambahkan+Daftar+Assembly+Supaya+Tampil+di+Dialog+Add+References+Visual+Studio" target="_blank" title="Submit Menambahkan Daftar Assembly Supaya Tampil di Dialog Add References Visual Studio to DotNetKicks"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Facebook.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://del.icio.us/post?url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/06/16/Menambahkan_2D00_Daftar_2D00_Assembly_2D00_Supaya_2D00_Tampil_2D00_di_2D00_Dialog_2D00_Add_2D00_References_2D00_Visual_2D00_Studio.aspx&amp;amp;title=Menambahkan+Daftar+Assembly+Supaya+Tampil+di+Dialog+Add+References+Visual+Studio" target="_blank" title="Submit Menambahkan Daftar Assembly Supaya Tampil di Dialog Add References Visual Studio to del.icio.us"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Delicious.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://www.digg.com/submit?url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/06/16/Menambahkan_2D00_Daftar_2D00_Assembly_2D00_Supaya_2D00_Tampil_2D00_di_2D00_Dialog_2D00_Add_2D00_References_2D00_Visual_2D00_Studio.aspx&amp;amp;phase=2" target="_blank" title="Submit Menambahkan Daftar Assembly Supaya Tampil di Dialog Add References Visual Studio to digg.com"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Digg.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;mkt=en-us&amp;amp;url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/06/16/Menambahkan_2D00_Daftar_2D00_Assembly_2D00_Supaya_2D00_Tampil_2D00_di_2D00_Dialog_2D00_Add_2D00_References_2D00_Visual_2D00_Studio.aspx&amp;amp;title=Menambahkan+Daftar+Assembly+Supaya+Tampil+di+Dialog+Add+References+Visual+Studio" target="_blank" title="Add Menambahkan Daftar Assembly Supaya Tampil di Dialog Add References Visual Studio to Live Bookmarks"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Live.16.gif" border="0"&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://geeks.netindonesia.net/aggbug.aspx?PostID=52327" width="1" height="1"&gt;</content><author><name>cahnom</name><uri>http://geeks.netindonesia.net/members/cahnom.aspx</uri></author><category term="Tips" scheme="http://geeks.netindonesia.net/blogs/cahnom/archive/tags/Tips/default.aspx" /><category term="Visual Studio" scheme="http://geeks.netindonesia.net/blogs/cahnom/archive/tags/Visual+Studio/default.aspx" /><category term="Assembly" scheme="http://geeks.netindonesia.net/blogs/cahnom/archive/tags/Assembly/default.aspx" /></entry><entry><title>JavaScript IntelliSense pada Visual Studio 2008</title><link rel="alternate" type="text/html" href="http://geeks.netindonesia.net/blogs/cahnom/archive/2008/06/06/JavaScript_2D00_IntelliSense_2D00_pada_2D00_Visual_2D00_Studio_2D00_2008.aspx" /><id>http://geeks.netindonesia.net/blogs/cahnom/archive/2008/06/06/JavaScript_2D00_IntelliSense_2D00_pada_2D00_Visual_2D00_Studio_2D00_2008.aspx</id><published>2008-06-06T01:13:41Z</published><updated>2008-06-06T01:13:41Z</updated><content type="html">&lt;p&gt;Pada Visual Studio 2008, JavaScript IntelliSense merupakan salah satu fitur menarik yang cukup membantu programmer dalam membuat aplikas dengan JavaScript. Yang menarik adalah JavaScript intellisense tidak hanya berlaku untuk objek yang berada dalam satu file. Objek JavaScript yang berada di embedded resource juga dapat ditampilkan intellisense-nya.&lt;/p&gt; &lt;p&gt;Untuk dapat menampilkan IntelliSense javascript di resource file, gunakan cara khusus seperti pada gambar di bawah.&lt;/p&gt; &lt;p&gt;&lt;a href="http://geeks.netindonesia.net/blogs/cahnom/WindowsLiveWriter/JavaScriptIntelliSensepadaVisualStudio20_7382/image_2.png"&gt;&lt;img style="border-top-width:0px;border-left-width:0px;border-bottom-width:0px;border-right-width:0px;" height="262" alt="image" src="http://geeks.netindonesia.net/blogs/cahnom/WindowsLiveWriter/JavaScriptIntelliSensepadaVisualStudio20_7382/image_thumb.png" width="611" border="0" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Tanda /// &amp;lt;reference name=&amp;quot;MicrosoftAjax.js&amp;quot;/&amp;gt; menunjukkan bahwa JavaScript yang berada di embedded resource dengan kunci MicrosoftAjax.js akan ditampilkan dalam intellisense. Secara lengkap syntax untuk menambahkan IntelliSense pada embeded resource adalah sebagai berkut.&lt;/p&gt; &lt;p&gt;/// &amp;lt;reference name=&amp;quot;resource-name&amp;quot; /&amp;gt;&lt;br /&gt;/// &amp;lt;reference name=&amp;quot;resource-name&amp;quot; assembly=&amp;quot;assembly-name&amp;quot; /&amp;gt;  &lt;p&gt;Assembly name dapat tidak ditulis (optional) sehingga pada contoh sebelumnya cukup menulis nama resource tanpa menulis assembly-nya.&lt;/p&gt; &lt;p&gt;Untuk file yang tidak berada dalam resouece file dapat dimunculkan dalam intellisense dengan menambahkan tanda /// &amp;lt;reference path=&amp;quot;Scripts/Common.js&amp;quot;/&amp;gt; seperti pada gambar di bawah.&lt;/p&gt; &lt;p&gt;&lt;a href="http://geeks.netindonesia.net/blogs/cahnom/WindowsLiveWriter/JavaScriptIntelliSensepadaVisualStudio20_7382/image_6.png"&gt;&lt;img style="border-top-width:0px;border-left-width:0px;border-bottom-width:0px;border-right-width:0px;" height="260" alt="image" src="http://geeks.netindonesia.net/blogs/cahnom/WindowsLiveWriter/JavaScriptIntelliSensepadaVisualStudio20_7382/image_thumb_2.png" width="459" border="0" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Dengan fitur IntelliSense ini, kita semakin mudah dalam menulis kode javascript.&lt;/p&gt; &lt;p&gt;Semoga bermanfaat&lt;/p&gt;
&lt;div class = "shareblock"&gt;&lt;strong&gt;Share this post: &lt;/strong&gt;&lt;a href="mailto:?body=Thought you might like this: http://geeks.netindonesia.net/blogs/cahnom/archive/2008/06/06/JavaScript_2D00_IntelliSense_2D00_pada_2D00_Visual_2D00_Studio_2D00_2008.aspx&amp;amp;subject=JavaScript IntelliSense pada Visual Studio 2008" target="_blank" title="Send via email"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Mail.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://www.facebook.com/sharer.php?u=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/06/06/JavaScript_2D00_IntelliSense_2D00_pada_2D00_Visual_2D00_Studio_2D00_2008.aspx&amp;amp;t=JavaScript+IntelliSense+pada+Visual+Studio+2008" target="_blank" title="Submit JavaScript IntelliSense pada Visual Studio 2008 to DotNetKicks"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Facebook.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://del.icio.us/post?url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/06/06/JavaScript_2D00_IntelliSense_2D00_pada_2D00_Visual_2D00_Studio_2D00_2008.aspx&amp;amp;title=JavaScript+IntelliSense+pada+Visual+Studio+2008" target="_blank" title="Submit JavaScript IntelliSense pada Visual Studio 2008 to del.icio.us"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Delicious.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://www.digg.com/submit?url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/06/06/JavaScript_2D00_IntelliSense_2D00_pada_2D00_Visual_2D00_Studio_2D00_2008.aspx&amp;amp;phase=2" target="_blank" title="Submit JavaScript IntelliSense pada Visual Studio 2008 to digg.com"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Digg.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;mkt=en-us&amp;amp;url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/06/06/JavaScript_2D00_IntelliSense_2D00_pada_2D00_Visual_2D00_Studio_2D00_2008.aspx&amp;amp;title=JavaScript+IntelliSense+pada+Visual+Studio+2008" target="_blank" title="Add JavaScript IntelliSense pada Visual Studio 2008 to Live Bookmarks"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Live.16.gif" border="0"&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://geeks.netindonesia.net/aggbug.aspx?PostID=50604" width="1" height="1"&gt;</content><author><name>cahnom</name><uri>http://geeks.netindonesia.net/members/cahnom.aspx</uri></author></entry><entry><title>Internet Explorer Open Modal Window</title><link rel="alternate" type="text/html" href="http://geeks.netindonesia.net/blogs/cahnom/archive/2008/05/22/internet-explorer-open-modal-window.aspx" /><id>http://geeks.netindonesia.net/blogs/cahnom/archive/2008/05/22/internet-explorer-open-modal-window.aspx</id><published>2008-05-22T00:52:01Z</published><updated>2008-05-22T00:52:01Z</updated><content type="html">&lt;p&gt;Pada Internet Explorer terdapat salah satu fitur untuk membuat pop-up window&amp;nbsp; yang bersifat modal, yaitu ketika window pop-up muncul maka window pemanggilnya tidak bisa diakses (terkunci). Fasilitas ini sangat menarik karena dalam pembuatan aplikasi web seringkali harus membuat window kecil untuk input/pemilihan data.&lt;/p&gt; &lt;p&gt;Lebih lengkap silakan baca di &lt;a title="Internet Explorer Open Modal Window" href="http://www.masykur.web.id/post/Internet-Explorer-Open-Modal-Window.aspx"&gt;Internet Explorer Open Modal Window&lt;/a&gt;&lt;/p&gt;
&lt;div class = "shareblock"&gt;&lt;strong&gt;Share this post: &lt;/strong&gt;&lt;a href="mailto:?body=Thought you might like this: http://geeks.netindonesia.net/blogs/cahnom/archive/2008/05/22/internet-explorer-open-modal-window.aspx&amp;amp;subject=Internet Explorer Open Modal Window" target="_blank" title="Send via email"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Mail.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://www.facebook.com/sharer.php?u=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/05/22/internet-explorer-open-modal-window.aspx&amp;amp;t=Internet+Explorer+Open+Modal+Window" target="_blank" title="Submit Internet Explorer Open Modal Window to DotNetKicks"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Facebook.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://del.icio.us/post?url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/05/22/internet-explorer-open-modal-window.aspx&amp;amp;title=Internet+Explorer+Open+Modal+Window" target="_blank" title="Submit Internet Explorer Open Modal Window to del.icio.us"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Delicious.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://www.digg.com/submit?url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/05/22/internet-explorer-open-modal-window.aspx&amp;amp;phase=2" target="_blank" title="Submit Internet Explorer Open Modal Window to digg.com"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Digg.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;mkt=en-us&amp;amp;url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/05/22/internet-explorer-open-modal-window.aspx&amp;amp;title=Internet+Explorer+Open+Modal+Window" target="_blank" title="Add Internet Explorer Open Modal Window to Live Bookmarks"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Live.16.gif" border="0"&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://geeks.netindonesia.net/aggbug.aspx?PostID=48183" width="1" height="1"&gt;</content><author><name>cahnom</name><uri>http://geeks.netindonesia.net/members/cahnom.aspx</uri></author><category term="Javascript" scheme="http://geeks.netindonesia.net/blogs/cahnom/archive/tags/Javascript/default.aspx" /><category term="Modal Window" scheme="http://geeks.netindonesia.net/blogs/cahnom/archive/tags/Modal+Window/default.aspx" /></entry><entry><title>Object Oriented JavaScript : Overloading dan Type-Checking</title><link rel="alternate" type="text/html" href="http://geeks.netindonesia.net/blogs/cahnom/archive/2008/05/06/object-oriented-javascript-overloading-dan-type-checking.aspx" /><id>http://geeks.netindonesia.net/blogs/cahnom/archive/2008/05/06/object-oriented-javascript-overloading-dan-type-checking.aspx</id><published>2008-05-06T03:14:00Z</published><updated>2008-05-06T03:14:00Z</updated><content type="html">&lt;p&gt;Pada dasarnya JavaScript merupakan dynamic language programming yang hanya tidak type-safe. Dalam JavaScript hanya mengenal lima macam tipe data string, number, boolean, function dan object. Setiap variable adalah variant yaitu dapat diisi dengan tipe data apa saja.&lt;/p&gt;
&lt;p&gt;Contoh:&lt;/p&gt;
&lt;p&gt;&lt;font face="courier new,courier"&gt;&lt;font color="#0000ff" size="2"&gt;var&lt;/font&gt;&lt;font size="2"&gt; i = 0;&lt;/p&gt;&lt;/font&gt;&lt;/font&gt;
&lt;p&gt;Variabel i juga dapat diisi dengan nilai string.&lt;/p&gt;&lt;font color="#0000ff" size="2"&gt;
&lt;p&gt;&lt;font face="courier new,courier"&gt;var&lt;/font&gt;&lt;/font&gt;&lt;font face="courier new,courier"&gt;&lt;font size="2"&gt; i = 0;&lt;br /&gt;i = &lt;/font&gt;&lt;font color="#a31515" size="2"&gt;&amp;quot;nilai i&amp;quot;&lt;/font&gt;&lt;font size="2"&gt;;&lt;/p&gt;&lt;/font&gt;&lt;/font&gt;
&lt;p&gt;Begitu pula dalam sebuah parameter fungsi, parameter dapat diisi dengan berbagai macam time data dan itu memang diperbolehkan dalam&amp;nbsp; javascript.&lt;/p&gt;&lt;font color="#0000ff" size="2"&gt;
&lt;p&gt;&lt;font face="courier new,courier"&gt;function&lt;/font&gt;&lt;/font&gt;&lt;font face="courier new,courier"&gt;&lt;font size="2"&gt; Penambahan(x, y) {&lt;br /&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;&lt;font face="courier new,courier"&gt; x + y;&lt;br /&gt;}&lt;/font&gt;&lt;/p&gt;&lt;/font&gt;
&lt;p&gt;Pada contoh kode di atas, nilai x dan y bisa diisi dengan angka (baik bulan / integer maupun pecahan / float) dan juga bisa diisi dengan string.&lt;/p&gt;&lt;font color="#0000ff" size="2"&gt;&lt;font face="courier new,courier"&gt;function&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;&lt;font face="courier new,courier"&gt; Penambahan(x, y) {&lt;br /&gt;&lt;/font&gt;&lt;/font&gt;&lt;font face="courier new,courier" color="#0000ff" size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return&lt;/font&gt;&lt;font size="2"&gt;&lt;font face="courier new,courier"&gt; x + y;&lt;br /&gt;&lt;/font&gt;&lt;font face="courier new,courier"&gt;}&lt;br /&gt;&lt;/font&gt;&lt;font face="courier new,courier"&gt;Penambahan(1, 2); &lt;/font&gt;&lt;/font&gt;&lt;font color="#008000" size="2"&gt;&lt;font face="courier new,courier"&gt;// menghasilkan nilai 3&lt;br /&gt;&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;&lt;font face="courier new,courier"&gt;Penambahan(&lt;/font&gt;&lt;/font&gt;&lt;font face="courier new,courier"&gt;&lt;font color="#a31515" size="2"&gt;&amp;quot;1&amp;quot;&lt;/font&gt;&lt;font size="2"&gt;, &lt;/font&gt;&lt;font color="#a31515" size="2"&gt;&amp;quot;2&amp;quot;&lt;/font&gt;&lt;font size="2"&gt;); &lt;/font&gt;&lt;/font&gt;&lt;font color="#008000" size="2"&gt;&lt;font face="courier new,courier"&gt;// menghasilkan nilai string &amp;quot;12&amp;quot;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;font color="#008000" size="2"&gt; 
&lt;p&gt;&lt;/font&gt;Dari contoh di atas, semua jenis data dapat masuk kedalam fungsi tanpa diperiksa tipe datanya. Bagaimana dengan overloading seperti yang umum dipake oleh bahasa pembrograman yang telah mendukung object oriented? Dalam JavaScript tidak mendukung overloading secara internal tapi dapat dilakukan sedikit trik supaya overloading dapat dilakukan pada JavaScript.&lt;/p&gt;
&lt;p&gt;JavaScript memilika satu keyword &lt;strong&gt;typeof&lt;/strong&gt; untuk mengecek tipe data apa yang terdapat dalam variable. Fungsi penambahan di sebelumnya dapat dioverload seperti kode di bawah.&lt;/p&gt;&lt;font color="#0000ff" size="2"&gt;
&lt;p&gt;&lt;font face="courier new,courier"&gt;function&lt;/font&gt;&lt;/font&gt;&lt;font face="courier new,courier" size="2"&gt; Penambahan(x, y) {&lt;br /&gt;&lt;/font&gt;&lt;font face="courier new,courier"&gt;&lt;font color="#008000" size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // pengecekan apakah kedua parameter terisi atau tidak&lt;br /&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;&amp;nbsp; &amp;nbsp; if&lt;/font&gt;&lt;font size="2"&gt; ((&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;typeof&lt;/font&gt;&lt;font size="2"&gt; x == &lt;/font&gt;&lt;font color="#a31515" size="2"&gt;&amp;quot;undefined&amp;quot;&lt;/font&gt;&lt;font size="2"&gt;) || (&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;typeof&lt;/font&gt;&lt;font size="2"&gt; y == &lt;/font&gt;&lt;/font&gt;&lt;font face="courier new,courier"&gt;&lt;font color="#a31515" size="2"&gt;&amp;quot;undefined)) {&lt;br /&gt;&lt;/font&gt;&lt;font size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert(&lt;/font&gt;&lt;font color="#a31515" size="2"&gt;&amp;quot;Parameter x dan y harus diisi&amp;quot;&lt;/font&gt;&lt;/font&gt;&lt;font face="courier new,courier"&gt;&lt;font size="2"&gt;);&lt;br /&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;null&lt;/font&gt;&lt;/font&gt;&lt;font face="courier new,courier" size="2"&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;/font&gt;&lt;font face="courier new,courier"&gt;&lt;font color="#008000" size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Jika x dan y adalah string&lt;br /&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&lt;/font&gt;&lt;font size="2"&gt; ((&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;typeof&lt;/font&gt;&lt;font size="2"&gt; x == &lt;/font&gt;&lt;font color="#a31515" size="2"&gt;&amp;quot;string&amp;quot;&lt;/font&gt;&lt;font size="2"&gt;) &amp;amp;&amp;amp; (&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;typeof&lt;/font&gt;&lt;font size="2"&gt; y == &lt;/font&gt;&lt;font color="#a31515" size="2"&gt;&amp;quot;string&amp;quot;&lt;/font&gt;&lt;/font&gt;&lt;font face="courier new,courier"&gt;&lt;font size="2"&gt;)) {&lt;br /&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return&lt;/font&gt;&lt;font size="2"&gt; x + &lt;/font&gt;&lt;font color="#a31515" size="2"&gt;&amp;quot; plus &amp;quot;&lt;/font&gt;&lt;/font&gt;&lt;font face="courier new,courier" size="2"&gt; + y;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;/font&gt;&lt;font face="courier new,courier"&gt;&lt;font color="#008000" size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Overload x dan y adalah number&lt;br /&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&lt;/font&gt;&lt;font size="2"&gt; ((&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;typeof&lt;/font&gt;&lt;font size="2"&gt; x == &lt;/font&gt;&lt;font color="#a31515" size="2"&gt;&amp;quot;number&amp;quot;&lt;/font&gt;&lt;font size="2"&gt;) &amp;amp;&amp;amp; (&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;typeof&lt;/font&gt;&lt;font size="2"&gt; y == &lt;/font&gt;&lt;font color="#a31515" size="2"&gt;&amp;quot;number&amp;quot;&lt;/font&gt;&lt;/font&gt;&lt;font face="courier new,courier"&gt;&lt;font size="2"&gt;)) {&lt;br /&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return&lt;/font&gt;&lt;/font&gt;&lt;font face="courier new,courier"&gt;&lt;font size="2"&gt; x + y;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; } &lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;else&lt;/font&gt;&lt;/font&gt;&lt;font face="courier new,courier"&gt;&lt;font size="2"&gt; {&lt;br /&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;null&lt;/font&gt;&lt;/font&gt;&lt;font face="courier new,courier" size="2"&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;}&lt;br /&gt;Penambahan(1, 2); &lt;/font&gt;&lt;font face="courier new,courier"&gt;&lt;font color="#008000" size="2"&gt;// menghasilkan nilai 3&lt;br /&gt;&lt;/font&gt;&lt;font size="2"&gt;Penambahan(&lt;/font&gt;&lt;font color="#a31515" size="2"&gt;&amp;quot;1&amp;quot;&lt;/font&gt;&lt;font size="2"&gt;, &lt;/font&gt;&lt;font color="#a31515" size="2"&gt;&amp;quot;2&amp;quot;&lt;/font&gt;&lt;font size="2"&gt;); &lt;/font&gt;&lt;font color="#008000" size="2"&gt;// menghasilkan nilai string &amp;quot;1 plus 2&amp;quot;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font color="#008000" size="2"&gt;&lt;br /&gt;&lt;/font&gt;Keyword &lt;strong&gt;typeof &lt;/strong&gt;hanya dapat mengecek object, function, boolean, string, dan number. Array dan object yang terdefinisi tidak dapat dicek melalui keyword ini. Untuk mengatasi masalah ini dapat digunakan contructor dari masing-masing variabel. Fungsi penambahan di dapat diganti dengan.&lt;/p&gt;&lt;font color="#0000ff" size="2"&gt;
&lt;p&gt;&lt;font face="courier new,courier"&gt;function&lt;/font&gt;&lt;/font&gt;&lt;font face="courier new,courier" size="2"&gt; Penambahan(x, y) {&lt;br /&gt;&lt;/font&gt;&lt;font face="courier new,courier"&gt;&lt;font color="#008000" size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Jika x dan y adalah string&lt;br /&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&lt;/font&gt;&lt;font size="2"&gt; ((&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;typeof&lt;/font&gt;&lt;/font&gt;&lt;font face="courier new,courier"&gt;&lt;font size="2"&gt;.constructor == String) &amp;amp;&amp;amp; (y.constructor == String)) {&lt;br /&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return&lt;/font&gt;&lt;font size="2"&gt; x + &lt;/font&gt;&lt;font color="#a31515" size="2"&gt;&amp;quot; plus &amp;quot;&lt;/font&gt;&lt;/font&gt;&lt;font face="courier new,courier" size="2"&gt; + y;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;/font&gt;&lt;font face="courier new,courier"&gt;&lt;font color="#008000" size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Overload x dan y adalah number&lt;br /&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&lt;/font&gt;&lt;/font&gt;&lt;font face="courier new,courier"&gt;&lt;font size="2"&gt; ((x.constructor == Number) &amp;amp;&amp;amp; (y.constructor == Number)) {&lt;br /&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return&lt;/font&gt;&lt;/font&gt;&lt;font face="courier new,courier" size="2"&gt; x + y;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; } &lt;br /&gt;&lt;/font&gt;&lt;font face="courier new,courier"&gt;&lt;font color="#008000" size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Overload x dan y adalah array&lt;br /&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&lt;/font&gt;&lt;/font&gt;&lt;font face="courier new,courier"&gt;&lt;font size="2"&gt; (x.contructor == Array) &amp;amp;&amp;amp; (y.constructor == Array) {&lt;br /&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var&lt;/font&gt;&lt;/font&gt;&lt;font face="courier new,courier"&gt;&lt;font size="2"&gt; ret = [];&lt;br /&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var&lt;/font&gt;&lt;/font&gt;&lt;font face="courier new,courier"&gt;&lt;font size="2"&gt; i=0;&lt;br /&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for&lt;/font&gt;&lt;/font&gt;&lt;font face="courier new,courier"&gt;&lt;font size="2"&gt; (i=0; i &amp;lt; x.length; i++) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ret.push(x[ i ]+y[ i ]);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return&lt;/font&gt;&lt;/font&gt;&lt;font face="courier new,courier"&gt;&lt;font size="2"&gt; ret;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; } &lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;else&lt;/font&gt;&lt;/font&gt;&lt;font face="courier new,courier"&gt;&lt;font size="2"&gt; {&lt;br /&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;null&lt;/font&gt;&lt;/font&gt;&lt;font face="courier new,courier"&gt;&lt;font size="2"&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;}&lt;br /&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;var&lt;/font&gt;&lt;/font&gt;&lt;font face="courier new,courier" size="2"&gt; array&lt;br /&gt;Penambahan(1, 2); &lt;/font&gt;&lt;font face="courier new,courier"&gt;&lt;font color="#008000" size="2"&gt;// menghasilkan nilai 3&lt;br /&gt;&lt;/font&gt;&lt;font size="2"&gt;Penambahan(&lt;/font&gt;&lt;font color="#a31515" size="2"&gt;&amp;quot;1&amp;quot;&lt;/font&gt;&lt;font size="2"&gt;, &lt;/font&gt;&lt;font color="#a31515" size="2"&gt;&amp;quot;2&amp;quot;&lt;/font&gt;&lt;font size="2"&gt;); &lt;/font&gt;&lt;/font&gt;&lt;font face="courier new,courier"&gt;&lt;font color="#008000" size="2"&gt;// menghasilkan nilai string &amp;quot;1 plus 2&amp;quot;&lt;br /&gt;&lt;/font&gt;&lt;font size="2"&gt;Penambahan([1, 2, 3], [2, 4, 5]); &lt;/font&gt;&lt;font color="#008000" size="2"&gt;// menghasilkan nilai array [3, 6, 8]&lt;/p&gt;&lt;/font&gt;&lt;/font&gt;
&lt;p&gt;Selain type-checking, dalam fungsi JavaScript, terdapat satu array variabel yaitu &lt;strong&gt;arguments &lt;/strong&gt;yang berisi semua parameter yang dimasukkan. Karena &lt;strong&gt;arguments &lt;/strong&gt;berupa array, maka kita dapat memasukkan berapapun jumlah parameter tanpa batas. Sebagai contoh.&lt;/p&gt;&lt;font color="#0000ff" size="2"&gt;
&lt;p&gt;&lt;font face="courier new,courier"&gt;function&lt;/font&gt;&lt;/font&gt;&lt;font face="courier new,courier"&gt;&lt;font size="2"&gt; Penambahan() {&lt;br /&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; var&lt;/font&gt;&lt;/font&gt;&lt;font face="courier new,courier"&gt;&lt;font size="2"&gt; ret = 0;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;var&lt;/font&gt;&lt;/font&gt;&lt;font face="courier new,courier"&gt;&lt;font size="2"&gt; i;&lt;br /&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for&lt;/font&gt;&lt;/font&gt;&lt;font face="courier new,courier"&gt;&lt;font size="2"&gt; (i=0; i arguments.length; i++) {&lt;br /&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&lt;/font&gt;&lt;/font&gt;&lt;font face="courier new,courier"&gt;&lt;font size="2"&gt; (arguments&lt;img src="http://geeks.netindonesia.net/emoticons/emotion-55.gif" alt="Idea" /&gt;.constructor == Number) {&lt;br /&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;ret += arguments&lt;img src="http://geeks.netindonesia.net/emoticons/emotion-55.gif" alt="Idea" /&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return&lt;/font&gt;&lt;/font&gt;&lt;font face="courier new,courier" size="2"&gt; ret;&lt;br /&gt;}&lt;br /&gt;Penambahan(1, 2);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/font&gt;&lt;font face="courier new,courier"&gt;&lt;font color="#008000" size="2"&gt;// menghasilkan nilai 3&lt;br /&gt;&lt;/font&gt;&lt;font size="2"&gt;Penambahan(1, 2, 3);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/font&gt;&lt;/font&gt;&lt;font face="courier new,courier"&gt;&lt;font color="#008000" size="2"&gt;// menghasilkan nilai 6&lt;br /&gt;&lt;/font&gt;&lt;font size="2"&gt;Penambahan(1, 2, 3, &lt;/font&gt;&lt;font color="#a31515" size="2"&gt;&amp;quot;4&amp;quot;&lt;/font&gt;&lt;font size="2"&gt;); &lt;/font&gt;&lt;/font&gt;&lt;font face="courier new,courier" color="#008000" size="2"&gt;// menghasilkan nilai 6 karena parameter &amp;quot;4&amp;quot; bertipe string &lt;br /&gt;&lt;/font&gt;&lt;font color="#008000" size="2"&gt;&lt;font face="courier new,courier"&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Dalam fungsi selain number tidak masuk dalam perhitungan&lt;/font&gt;&lt;/p&gt;&lt;/font&gt;
&lt;p&gt;Dengan type-checking dan variabel arguments, kita dapat membuat overloading function sebagaimana halnya bahasa pemprograman lain.&lt;/p&gt;
&lt;p&gt;Demikian pemaparan singkat mengenai salah satu fitur pemprograman object oriented menggunakan javascript. Semoga tulisan ini bisa bermanfaat bagi semua.&lt;/p&gt;
&lt;div class = "shareblock"&gt;&lt;strong&gt;Share this post: &lt;/strong&gt;&lt;a href="mailto:?body=Thought you might like this: http://geeks.netindonesia.net/blogs/cahnom/archive/2008/05/06/object-oriented-javascript-overloading-dan-type-checking.aspx&amp;amp;subject=Object Oriented JavaScript : Overloading dan Type-Checking" target="_blank" title="Send via email"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Mail.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://www.facebook.com/sharer.php?u=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/05/06/object-oriented-javascript-overloading-dan-type-checking.aspx&amp;amp;t=Object+Oriented+JavaScript+%3a+Overloading+dan+Type-Checking" target="_blank" title="Submit Object Oriented JavaScript : Overloading dan Type-Checking to DotNetKicks"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Facebook.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://del.icio.us/post?url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/05/06/object-oriented-javascript-overloading-dan-type-checking.aspx&amp;amp;title=Object+Oriented+JavaScript+%3a+Overloading+dan+Type-Checking" target="_blank" title="Submit Object Oriented JavaScript : Overloading dan Type-Checking to del.icio.us"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Delicious.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://www.digg.com/submit?url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/05/06/object-oriented-javascript-overloading-dan-type-checking.aspx&amp;amp;phase=2" target="_blank" title="Submit Object Oriented JavaScript : Overloading dan Type-Checking to digg.com"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Digg.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;mkt=en-us&amp;amp;url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/05/06/object-oriented-javascript-overloading-dan-type-checking.aspx&amp;amp;title=Object+Oriented+JavaScript+%3a+Overloading+dan+Type-Checking" target="_blank" title="Add Object Oriented JavaScript : Overloading dan Type-Checking to Live Bookmarks"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Live.16.gif" border="0"&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://geeks.netindonesia.net/aggbug.aspx?PostID=46551" width="1" height="1"&gt;</content><author><name>cahnom</name><uri>http://geeks.netindonesia.net/members/cahnom.aspx</uri></author><category term="Javascript" scheme="http://geeks.netindonesia.net/blogs/cahnom/archive/tags/Javascript/default.aspx" /><category term="Object Oriented" scheme="http://geeks.netindonesia.net/blogs/cahnom/archive/tags/Object+Oriented/default.aspx" /></entry><entry><title>ASP.NET MVC Source Code Now Available</title><link rel="alternate" type="text/html" href="http://geeks.netindonesia.net/blogs/cahnom/archive/2008/03/28/asp-net-mvc-source-code-now-available.aspx" /><id>http://geeks.netindonesia.net/blogs/cahnom/archive/2008/03/28/asp-net-mvc-source-code-now-available.aspx</id><published>2008-03-28T16:07:56Z</published><updated>2008-03-28T16:07:56Z</updated><content type="html">&lt;p&gt;Menengok blog &lt;a href="http://weblogs.asp.net/scottgu/archive/2008/03/21/asp-net-mvc-source-code-now-available.aspx" target="_blank"&gt;Scott Guthrie&lt;/a&gt; tanggal 21 Maret kemaren tertulis bahwa source code ASP.NET MVC Framework telah tersedia untuk didownload di codeplex (&lt;a title="http://www.codeplex.com/aspnet/Release/ProjectReleases.aspx?ReleaseId=11833" href="http://www.codeplex.com/aspnet/Release/ProjectReleases.aspx?ReleaseId=11833"&gt;http://www.codeplex.com/aspnet/Release/ProjectReleases.aspx?ReleaseId=11833&lt;/a&gt;).&lt;/p&gt; &lt;p&gt;Bagi yang pengen melihat jeroan ASP.NET MVC Framework silakan download paket project tersebut yang berukuran 124KB. &lt;/p&gt; &lt;p&gt;Selamat mengoprek.&lt;/p&gt;
&lt;div class = "shareblock"&gt;&lt;strong&gt;Share this post: &lt;/strong&gt;&lt;a href="mailto:?body=Thought you might like this: http://geeks.netindonesia.net/blogs/cahnom/archive/2008/03/28/asp-net-mvc-source-code-now-available.aspx&amp;amp;subject=ASP.NET MVC Source Code Now Available" target="_blank" title="Send via email"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Mail.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://www.facebook.com/sharer.php?u=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/03/28/asp-net-mvc-source-code-now-available.aspx&amp;amp;t=ASP.NET+MVC+Source+Code+Now+Available" target="_blank" title="Submit ASP.NET MVC Source Code Now Available to DotNetKicks"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Facebook.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://del.icio.us/post?url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/03/28/asp-net-mvc-source-code-now-available.aspx&amp;amp;title=ASP.NET+MVC+Source+Code+Now+Available" target="_blank" title="Submit ASP.NET MVC Source Code Now Available to del.icio.us"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Delicious.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="http://www.digg.com/submit?url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/03/28/asp-net-mvc-source-code-now-available.aspx&amp;amp;phase=2" target="_blank" title="Submit ASP.NET MVC Source Code Now Available to digg.com"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Digg.16.gif" border="0"&gt;&lt;/a&gt; | &lt;a href="https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;mkt=en-us&amp;amp;url=http://geeks.netindonesia.net/blogs/cahnom/archive/2008/03/28/asp-net-mvc-source-code-now-available.aspx&amp;amp;title=ASP.NET+MVC+Source+Code+Now+Available" target="_blank" title="Add ASP.NET MVC Source Code Now Available to Live Bookmarks"&gt;&lt;img src="http://geeks.netindonesia.net/Images/Share.Live.16.gif" border="0"&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://geeks.netindonesia.net/aggbug.aspx?PostID=43467" width="1" height="1"&gt;</content><author><name>cahnom</name><uri>http://geeks.netindonesia.net/members/cahnom.aspx</uri></author><category term="ASP.NET" scheme="http://geeks.netindonesia.net/blogs/cahnom/archive/tags/ASP.NET/default.aspx" /><category term="MVC Framework" scheme="http://geeks.netindonesia.net/blogs/cahnom/archive/tags/MVC+Framework/default.aspx" /></entry></feed>