<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blog.beyondrelational.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd"><channel><title>beyondrelational.com</title><link>http://blog.beyondrelational.com/blogs/</link><description /><dc:language>en-US</dc:language><generator>CommunityServer 2008.5 SP1 (Build: 31106.3070)</generator><item><title>Short answer code questions coming soon!</title><link>http://blog.beyondrelational.com/blogs/jeffwharton/archive/2012/05/12/short-answer-code-questions-coming-soon.aspx</link><pubDate>Fri, 11 May 2012 23:26:00 GMT</pubDate><guid isPermaLink="false">6e5011fa-7db5-4df3-bb79-9085c1d333b3:15629</guid><dc:creator>Jeff Wharton</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Microsoft has announces that short answer code questions will start appearing in exams soon. Short answer code questions test a candidates ability to write code that will solve the problem described in the question. More information can be found at &lt;a href="http://borntolearn.mslearn.net/btl/b/weblog/archive/2012/05/11/short-answer-code-questions-coming-soon.aspx?wa=wsignin1.0"&gt;Short answer code questions coming soon! - Born to Learn&lt;/a&gt;.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blog.beyondrelational.com/aggbug.aspx?PostID=15629" width="1" height="1"&gt;</description><category domain="http://blog.beyondrelational.com/blogs/jeffwharton/archive/tags/Certification/default.aspx">Certification</category></item><item><title>What is Cloud Computing?</title><link>http://blog.beyondrelational.com/blogs/hima/archive/2012/05/07/what-is-cloud-computing.aspx</link><pubDate>Mon, 07 May 2012 08:41:04 GMT</pubDate><guid isPermaLink="false">6e5011fa-7db5-4df3-bb79-9085c1d333b3:15627</guid><dc:creator>Hima</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;You might be hearing people talking&amp;nbsp; much about cloud computing these days . You might be wondering what is Cloud &lt;br /&gt;&amp;amp; Cloud Computing. In this blog post I just wanted to give overview of Cloud &amp;amp; Cloud Computing and continue to write series of blog posts related to Cloud Space. &lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;u&gt;In technical terms, A Cloud is a infrastructure providing network, compute, and storage capabilities. This is Managed infrastructure. &lt;/u&gt;&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;Cloud computing can be&amp;nbsp; categorized as &lt;/p&gt; &lt;p&gt;1. SAAS Software As&amp;nbsp; A Service &lt;/p&gt; &lt;p&gt;This is used for running applications on the public cloud. Cloud applications accessed to the users via internet. &lt;/p&gt; &lt;p&gt;For example : SalesForce.com , Google (Gmail, Google Site, Google Docs). Microsoft (Dynamics CRM Online, Exchange Online, Office Web apps, Sharepoint online) ,IBM – Lotus&amp;nbsp; Live , ORACLE (Fusion CRM)&lt;/p&gt; &lt;p&gt;2. PASS Platform As A Service&amp;nbsp; &lt;/p&gt; &lt;p&gt;This is platform for Developers to host their application code&lt;/p&gt; &lt;p&gt;This is Virtually Infinite computing resurces where Load balancing is done automatically&lt;/p&gt; &lt;p&gt;ex:Force.com, Microsoft Azure, Google App Engine (GAE), &lt;a href="http://himabinduvejella.blogspot.in/2010/02/#"&gt;Amazon Web Services&lt;/a&gt; (AWS), IBM Virtual Images. .&lt;/p&gt; &lt;p&gt;3. IASS Infrastructure As A Service&lt;/p&gt; &lt;p&gt;ex: Compute Cloud (Amazon EC2), Rack space, Right Scale, VM Ware, IBM BlueHouse, Hexa Grid. &lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;u&gt;Benefits &lt;/u&gt;&lt;/strong&gt;&lt;/p&gt; &lt;ul&gt; &lt;li&gt;Faster Deployment since no local installation is required , Simple clean fast and cheap  &lt;li&gt;Usage based Pricing – Pay for what you use( pay per user per month)  &lt;li&gt;Less Financial risk : With lower up-front cost and try before you buy options  &lt;li&gt;Reduced need for on-premises resources : IT Staff and servers can be reduced  &lt;li&gt;Easier upgrades – with no on-premised software to update &lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;u&gt;Disadvantages &lt;/u&gt;&lt;/p&gt; &lt;ul&gt; &lt;li&gt;Trusting provider for availability and data security . critical stuff need to be trusted  &lt;li&gt;can raise legal / regulatory concerns with storing data outside customer premises  &lt;li&gt;Can limit customization : If customers share a multi –tenet application  &lt;li&gt;Can be harder to integrate with on-premise applications  &lt;li&gt;Can have lower performance than on-premises applications &lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;strong&gt;&lt;u&gt;Public Cloud&amp;nbsp; &lt;/u&gt;&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;In case of the Public cloud applications, storage, and all resources are made available to the&amp;nbsp; public by a service provider. These services are free or offered on a pay-per-use model. In this case we have less manageability &lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;u&gt;Private Cloud&lt;/u&gt;&lt;/strong&gt; &lt;/p&gt; &lt;p&gt;Private cloud is cloud infrastructure that is operated for a single organization, hosted internally or externally&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;u&gt;Community Cloud&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;This will share infrastructure between several organizations from a specific community .&amp;nbsp; This community may have common concerns like security, compliance etc.&amp;nbsp; It can be managed internally or by a third-party . It can be &lt;/p&gt; &lt;p&gt;hosted internally or externally. &lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;u&gt;Hybrid Cloud&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;This is composition of two or more clouds public or private&amp;nbsp; that can take advantage of the public or private or community clouds&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blog.beyondrelational.com/aggbug.aspx?PostID=15627" width="1" height="1"&gt;</description></item><item><title>SSIS 2012 - New expression language functions(ReplaceNull,Left, Token, TokenCount)</title><link>http://blog.beyondrelational.com/blogs/jasonyousef/archive/2012/05/02/ssis-2012-new-expression-language-functions-replacenull-left-token-tokencount.aspx</link><pubDate>Wed, 02 May 2012 11:10:00 GMT</pubDate><guid isPermaLink="false">6e5011fa-7db5-4df3-bb79-9085c1d333b3:15626</guid><dc:creator>Jason Yousef</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;SQL Server 2012 is full rich of new features for SSIS, really many new useful stuff, such as the script task debug and the renovated Flat File Source, that could handle uneven number of columns...&lt;/p&gt;  &lt;p&gt;   &lt;br /&gt;Today I am going to demonstrate 4 new SSIS expression functions...&lt;/p&gt;  &lt;p&gt;   &lt;br /&gt;1-Left: Which exactly the opposite of the RIGHT functions, and similar to the LEFT function in T-SQL, which allows you to grab a number of characters from your string, starting at point zero or in other words from the LEFT side of the string. &lt;a href="http://msdn.microsoft.com/en-us/library/hh231081.aspx"&gt;http://msdn.microsoft.com/en-us/library/hh231081.aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;2-ReplaceNull: Which as the name means, it replaces your NULL values, with another string expression.&amp;#160; Before you would use ISNULL which returns Boolean injunction with a condition to change the value. ISNULL(LastName) ? &amp;quot;Unknown last name&amp;quot;:LastName&amp;#160; &lt;a href="http://msdn.microsoft.com/en-us/library/ms141184.aspx"&gt;http://msdn.microsoft.com/en-us/library/ms141184.aspx&lt;/a&gt;&amp;#160; &lt;a href="http://msdn.microsoft.com/en-us/library/hh479601.aspx"&gt;http://msdn.microsoft.com/en-us/library/hh479601.aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;   &lt;br /&gt;3- TokenCount: Which allows you to separate your string into tokens based on a specified delimiter, and returns back the numbers of occurrence of that expressions (Number of Tokens). &lt;a href="http://msdn.microsoft.com/en-us/library/hh213135.aspx"&gt;http://msdn.microsoft.com/en-us/library/hh213135.aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;   &lt;br /&gt;4-Token: Substrings your string into Tokens based on a specified delimiter and brings back the number of requested token. &lt;a href="http://msdn.microsoft.com/en-us/library/hh213216.aspx"&gt;http://msdn.microsoft.com/en-us/library/hh213216.aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Let&amp;#39;s use a demo as I learn better by examples...&lt;/p&gt;  &lt;p&gt;   &lt;br /&gt;The demo script as following..will create a test table, insert 3 records..&lt;/p&gt;  &lt;blockquote&gt;   &lt;div class="csharpcode"&gt;     &lt;pre class="alt"&gt;/* &lt;span class="kwrd"&gt;Create&lt;/span&gt; &lt;span class="kwrd"&gt;Table&lt;/span&gt; */&lt;/pre&gt;

    &lt;pre&gt;&lt;span class="kwrd"&gt;CREATE&lt;/span&gt; &lt;span class="kwrd"&gt;TABLE&lt;/span&gt; FunctionsDemo( &lt;/pre&gt;

    &lt;pre class="alt"&gt;ID &lt;span class="kwrd"&gt;INT&lt;/span&gt; &lt;span class="kwrd"&gt;identity&lt;/span&gt;(1,1), &lt;/pre&gt;

    &lt;pre&gt;Name &lt;span class="kwrd"&gt;VARCHAR&lt;/span&gt;(50), &lt;/pre&gt;

    &lt;pre class="alt"&gt;SSN &lt;span class="kwrd"&gt;Varchar&lt;/span&gt;(11), &lt;/pre&gt;

    &lt;pre&gt;Phone &lt;span class="kwrd"&gt;Varchar&lt;/span&gt;(12))&lt;/pre&gt;

    &lt;pre class="alt"&gt;&amp;#160;&lt;/pre&gt;

    &lt;pre&gt;&amp;#160;&lt;/pre&gt;

    &lt;pre class="alt"&gt;/* Insert Test Records */&lt;/pre&gt;

    &lt;pre&gt;INSERT &lt;span class="kwrd"&gt;INTO&lt;/span&gt; FunctionsDemo &lt;span class="kwrd"&gt;VALUES&lt;/span&gt; &lt;/pre&gt;

    &lt;pre class="alt"&gt;(&lt;span class="str"&gt;&amp;#39;James&amp;#39;&lt;/span&gt;,&lt;span class="str"&gt;&amp;#39;157-15-8877&amp;#39;&lt;/span&gt;,&lt;span class="str"&gt;&amp;#39;201-342-3355&amp;#39;&lt;/span&gt;) &lt;/pre&gt;

    &lt;pre&gt;,(&lt;span class="str"&gt;&amp;#39;John&amp;#39;&lt;/span&gt;,&lt;span class="kwrd"&gt;NULL&lt;/span&gt;,&lt;span class="str"&gt;&amp;#39;123-456-8965&amp;#39;&lt;/span&gt;) &lt;/pre&gt;

    &lt;pre class="alt"&gt;,(&lt;span class="str"&gt;&amp;#39;Liz&amp;#39;&lt;/span&gt;,&lt;span class="str"&gt;&amp;#39;212-91-5618&amp;#39;&lt;/span&gt;,&lt;span class="kwrd"&gt;NULL&lt;/span&gt;)&lt;/pre&gt;
  &lt;/div&gt;
  &lt;/blockquote&gt;

&lt;p&gt;&lt;a href="http://beyondrelational.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/jasonyousef/Demo_2D00_Script_5F00_61BBABE7.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:block;float:none;margin-left:auto;border-top:0px;margin-right:auto;border-right:0px;padding-top:0px;" title="Demo Script" border="0" alt="Demo Script" src="http://beyondrelational.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/jasonyousef/Demo_2D00_Script_5F00_thumb_5F00_24D70448.jpg" width="321" height="428" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;
  &lt;br /&gt;I&amp;#39;ll basically add a &amp;quot;OLE DB Source&amp;quot; to get the records from the database, then a derived column to use these expressions goodies.&lt;/p&gt;

&lt;p&gt;
  &lt;br /&gt;The package should look like that...I&amp;#39;ll assume that you know how to use the source and will skip its configurations.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://beyondrelational.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/jasonyousef/Package_5F00_55F63EE8.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:block;float:none;margin-left:auto;border-top:0px;margin-right:auto;border-right:0px;padding-top:0px;" title="Package" border="0" alt="Package" src="http://beyondrelational.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/jasonyousef/Package_5F00_thumb_5F00_08E5CF50.jpg" width="336" height="404" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;
  &lt;br /&gt;And here&amp;#39;s my expressions at work, in the Derived Column Transformation.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://beyondrelational.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/jasonyousef/Expressions_5F00_2E6F4CB1.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:block;float:none;margin-left:auto;border-top:0px;margin-right:auto;border-right:0px;padding-top:0px;" title="Expressions" border="0" alt="Expressions" src="http://beyondrelational.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/jasonyousef/Expressions_5F00_thumb_5F00_0D0FA715.jpg" width="750" height="442" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Which I’m using the above various expression, to get the last 4 digits of the SSN, to validate if the phone number in the right format, replace a null SSN or to get the area code from the phone number, which is simple and basic but will give you the idea of how you could use these new functions.&lt;/p&gt;

&lt;p&gt;
  &lt;br /&gt;And here&amp;#39;s the results&lt;/p&gt;

&lt;p&gt;&lt;a href="http://beyondrelational.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/jasonyousef/Results_5F00_0BCB0E36.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:block;float:none;margin-left:auto;border-top:0px;margin-right:auto;border-right:0px;padding-top:0px;" title="Results" border="0" alt="Results" src="http://beyondrelational.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/jasonyousef/Results_5F00_thumb_5F00_6AD79B8E.jpg" width="756" height="208" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;
  &lt;br /&gt;The package was created using SQL 2012.&lt;/p&gt;

&lt;p&gt;The package can be downloaded from &lt;a href="https://www.box.com/s/1c5d52b9f0d42134068a"&gt;https://www.box.com/s/1c5d52b9f0d42134068a&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;
  &lt;br /&gt;Hope that helps someone... 

  &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blog.beyondrelational.com/aggbug.aspx?PostID=15626" width="1" height="1"&gt;</description></item><item><title>Get Selected/Highlighted Text from WPF ComboBox</title><link>http://blog.beyondrelational.com/blogs/niladribiswas/archive/2012/04/30/get-selected-highlighted-text-from-wpf-combobox.aspx</link><pubDate>Tue, 01 May 2012 03:38:00 GMT</pubDate><guid isPermaLink="false">6e5011fa-7db5-4df3-bb79-9085c1d333b3:15625</guid><dc:creator>Niladri Biswas</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Hi, I a recent requirement of mine, I had to choose only the text that has been highlighted/selected in a WPF combo box which is editable.&lt;/p&gt;
&lt;p&gt;e.g.&lt;/p&gt;
&lt;p&gt;Let us say we have a WPF combobox and a button as given below&lt;/p&gt;
&lt;pre class="brush:sql"&gt;
&amp;lt;ComboBox  Name=&amp;quot;comboBox1&amp;quot; IsEditable=&amp;quot;True&amp;quot; /&amp;gt;
&amp;lt;Button Content=&amp;quot;Get Selected Text&amp;quot; Name=&amp;quot;button1&amp;quot; Click=&amp;quot;button1_Click&amp;quot; /&amp;gt;
&lt;/pre&gt;
&lt;p&gt;Now, we have written some text in the combobox at runtime say&lt;/p&gt;

&lt;p&gt;&lt;b&gt;DLF/ILP 2012 is rocking at it&amp;#39;s best.&lt;/b&gt;&lt;/p&gt;

&lt;p&gt;After that by using mouse/keyboard, say we have highlighted &lt;i&gt;&amp;quot;rocking&amp;quot;&lt;/i&gt;.&lt;/p&gt;

&lt;p&gt;Now when we click the button the result will be &amp;quot;rocking&amp;quot;.&lt;/p&gt;

&lt;p&gt;For doing so, I have written the below code&lt;/p&gt;

&lt;pre class="brush:sql"&gt;
private void button1_Click(object sender, RoutedEventArgs e)
{
	string result = string.Empty;
	var editableTextBox = comboBox1.Template.FindName(&amp;quot;PART_EditableTextBox&amp;quot;, comboBox1) as TextBox;
	if (editableTextBox != null)
	{
		result = editableTextBox.SelectedText;
	}

	MessageBox.Show(string.Format(&amp;quot;Selected Text is {0}&amp;quot;,result));

}
&lt;/pre&gt;

&lt;p&gt;&lt;b&gt;Code Explanation&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;The ComboBox doesn&amp;#39;t track the text selection itself, so if we want to get the selected text we will need to find the TextBox in the template for 
the ComboBox and read the selection information from there.The ComboBox class has a 
&lt;b&gt;TemplatePartAttribute:[TemplatePartAttribute(Name = &amp;quot;PART_EditableTextBox&amp;quot;, Type = typeof(TextBox))]&lt;/b&gt;. 
This specifies the control template expects a part with that name and that type.&lt;/p&gt;
&lt;p&gt;Hope this will be helpful.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blog.beyondrelational.com/aggbug.aspx?PostID=15625" width="1" height="1"&gt;</description><enclosure url="http://blog.beyondrelational.com/cfs-file.ashx/__key/CommunityServer.Components.PostAttachments/00.00.01.56.25/SelectedTextFromWPFCombobox.zip" length="12911" type="application/x-zip-compressed" /><category domain="http://blog.beyondrelational.com/blogs/niladribiswas/archive/tags/WPF/default.aspx">WPF</category></item><item><title>Implement Jquery.tmpl (template) with KnockoutJS, Asp.Net Mvc3</title><link>http://blog.beyondrelational.com/blogs/neeraj/archive/2012/04/22/implement-jquery-tmpl-template-with-knockoutjs-asp-net-mvc3.aspx</link><pubDate>Sun, 22 Apr 2012 11:16:17 GMT</pubDate><guid isPermaLink="false">6e5011fa-7db5-4df3-bb79-9085c1d333b3:15624</guid><dc:creator>Neeraj Kaushik</dc:creator><slash:comments>0</slash:comments><description>&lt;p align="justify"&gt;In continuation of my previous post on &lt;a href="http://dotnetdlr.com/2012/03/28/implement-search-screen-using-knockoutjs-jquery-and-asp-net-mvc3-2/" target="_blank"&gt;search implementation using knockoutjs&lt;/a&gt;. In previous example I bind grid with knockoutjs observable array object. Because of observable characteristics, once view model update then knockoutjs engine render html controls which are bound to that view model. I found one problem in it when dealing with huge data. &lt;/p&gt;  &lt;p align="justify"&gt;I had a requirement to show thousands of records in grid without paging. If I use knockoutjs way of binding with html table it takes time to load and browser also popup message about “Unresponsive script” which ask to further render or to stop script.&lt;/p&gt;  &lt;p align="justify"&gt;I wanted to use same view model for data but i didn’t want to use “data-bind” attribute in html. I found one of good plugin of jquery &lt;a href="http://api.jquery.com/jquery.tmpl/" target="_blank"&gt;(jQuery.tmpl)&lt;/a&gt; through which we can define template and can inject data in runtime. Here I’ll show you how to implement it. I am using same code base which I used in &lt;a href="http://dotnetdlr.com/2012/03/28/implement-search-screen-using-knockoutjs-jquery-and-asp-net-mvc3-2/" target="_blank"&gt;previous post&lt;/a&gt;.&lt;/p&gt;  &lt;p align="justify"&gt;&amp;#160;&lt;/p&gt;  &lt;p align="justify"&gt;&lt;strong&gt;How to reproduce error?&lt;/strong&gt;&lt;/p&gt;  &lt;p align="justify"&gt;Let say I am adding 20000 employees in collection and it will render on UI.&lt;/p&gt;  &lt;p align="justify"&gt;&lt;a href="http://beyondrelational.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/neeraj/image_5F00_57720846.png"&gt;&lt;img style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://beyondrelational.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/neeraj/image_5F00_thumb_5F00_11512566.png" width="428" height="271" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="justify"&gt;Binding with HTML table:&lt;/p&gt;  &lt;p align="justify"&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://beyondrelational.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/neeraj/image_5F00_44E96BF7.png"&gt;&lt;img style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://beyondrelational.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/neeraj/image_5F00_thumb_5F00_7D17BD42.png" width="425" height="134" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;I get following error message.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://beyondrelational.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/neeraj/image_5F00_6A9F46C0.png"&gt;&lt;img style="background-image:none;border-right-width:0px;margin:0px;padding-left:0px;padding-right:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://beyondrelational.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/neeraj/image_5F00_thumb_5F00_2AC53A6E.png" width="511" height="152" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Solution: &lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Implementation of Jquery.tmpl&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;To avoid this message and to render data fast I choose jquery.tmpl to render html table.&lt;/p&gt;  &lt;p&gt;Here are steps which will define step by step implementation:&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Step1 : &lt;/strong&gt;download Jquery.tmpl.js file from jquery &lt;/p&gt;  &lt;p&gt;&lt;a href="http://github.com/jquery/jquery-tmpl"&gt;http://github.com/jquery/jquery-tmpl&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://ajax.microsoft.com/ajax/jquery.templates/beta1/jquery.tmpl.min.js"&gt;http://ajax.microsoft.com/ajax/jquery.templates/beta1/jquery.tmpl.min.js&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;and save in scripts folder.&lt;/p&gt;  &lt;p&gt;You can directly reference script file as well if you want.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Step 2: &lt;/strong&gt;Reference jquery.tmpl.min.js in relevant page or _layout.cshtml file.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;pre class="brush:html"&gt;&amp;lt;script src=&amp;quot;@Url.Content(&amp;quot;~/Scripts/jquery.tmpl.min.js&amp;quot;)&amp;quot; 
	type=&amp;quot;text/javascript&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;/pre&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;p&gt;You can also give direct path from &lt;/p&gt;

&lt;p&gt;&amp;lt;script src=&amp;quot;&lt;a href="http://ajax.microsoft.com/ajax/jquery.templates/beta1/jquery.tmpl.min.js&amp;quot;"&gt;http://ajax.microsoft.com/ajax/jquery.templates/beta1/jquery.tmpl.min.js&amp;quot;&lt;/a&gt; type=&amp;quot;text/javascript&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 3:&lt;/strong&gt; Create blank tbody where data will populate.&lt;/p&gt;

&lt;pre class="brush:html"&gt;&amp;lt;tbody id=&amp;quot;datalist&amp;quot;&amp;gt;&amp;lt;/tbody&amp;gt;&lt;/pre&gt;

&lt;p&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 4:&lt;/strong&gt; Create template of &amp;lt;tr&amp;gt; element in which data will render.&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;p&gt;&lt;a href="http://beyondrelational.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/neeraj/image_5F00_6EA8D2EB.png"&gt;&lt;img style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://beyondrelational.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/neeraj/image_5F00_thumb_5F00_06BC177A.png" width="558" height="256" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 4: &lt;/strong&gt;Populate data in template.&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;p&gt;&lt;a href="http://beyondrelational.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/neeraj/image_5F00_2CDE2538.png"&gt;&lt;img style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://beyondrelational.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/neeraj/image_5F00_thumb_5F00_2D2A0C93.png" width="564" height="307" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 5: &lt;/strong&gt;Run application.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://beyondrelational.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/neeraj/image_5F00_3C6D48D5.png"&gt;&lt;img style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://beyondrelational.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/neeraj/image_5F00_thumb_5F00_5AB73E24.png" width="331" height="561" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;p&gt;&lt;a href="http://beyondrelational.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/neeraj/image_5F00_13BDF55A.png"&gt;&lt;img style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://beyondrelational.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/neeraj/image_5F00_thumb_5F00_51C6EA3E.png" width="331" height="498" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;p&gt;You can find code &lt;a href="https://skydrive.live.com/redir.aspx?cid=d5cf070e5761448a&amp;amp;resid=D5CF070E5761448A!937&amp;amp;parid=D5CF070E5761448A!164&amp;amp;authkey=!AGEIvTrPmtACno0" target="_blank"&gt;here&lt;/a&gt;.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blog.beyondrelational.com/aggbug.aspx?PostID=15624" width="1" height="1"&gt;</description><category domain="http://blog.beyondrelational.com/blogs/neeraj/archive/tags/_2300_ASP.NET/default.aspx">#ASP.NET</category><category domain="http://blog.beyondrelational.com/blogs/neeraj/archive/tags/ASP.NET/default.aspx">ASP.NET</category><category domain="http://blog.beyondrelational.com/blogs/neeraj/archive/tags/DotNet/default.aspx">DotNet</category><category domain="http://blog.beyondrelational.com/blogs/neeraj/archive/tags/jquery/default.aspx">jquery</category><category domain="http://blog.beyondrelational.com/blogs/neeraj/archive/tags/asp.net+mvc/default.aspx">asp.net mvc</category><category domain="http://blog.beyondrelational.com/blogs/neeraj/archive/tags/knockoutjs/default.aspx">knockoutjs</category></item><item><title>TSQL Challenge 79 – Basic Testing Results</title><link>http://blog.beyondrelational.com/blogs/tc/archive/2012/04/21/tsql-challenge-79-basic-testing-results.aspx</link><pubDate>Sat, 21 Apr 2012 11:52:00 GMT</pubDate><guid isPermaLink="false">6e5011fa-7db5-4df3-bb79-9085c1d333b3:15623</guid><dc:creator>puzzles</dc:creator><slash:comments>0</slash:comments><description>The basic testing results of &lt;a href="http://beyondrelational.com/puzzles/challenges/113/finding-the-islands.aspx" target="_blank"&gt;TSQL Challenge 79 - Finding the Islands&lt;/a&gt; is published and you can find it &lt;a href="http://beyondrelational.com/puzzles/tsql/challenges/79/basic-testing-results.aspx" target="_blank"&gt;here&lt;/a&gt;. &lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blog.beyondrelational.com/aggbug.aspx?PostID=15623" width="1" height="1"&gt;</description><category domain="http://blog.beyondrelational.com/blogs/tc/archive/tags/TSQL/default.aspx">TSQL</category><category domain="http://blog.beyondrelational.com/blogs/tc/archive/tags/TSQL+Challenge/default.aspx">TSQL Challenge</category><category domain="http://blog.beyondrelational.com/blogs/tc/archive/tags/SQL+Server/default.aspx">SQL Server</category><category domain="http://blog.beyondrelational.com/blogs/tc/archive/tags/_2300_TSQL/default.aspx">#TSQL</category><category domain="http://blog.beyondrelational.com/blogs/tc/archive/tags/_2300_SQLServer/default.aspx">#SQLServer</category><category domain="http://blog.beyondrelational.com/blogs/tc/archive/tags/challenge79/default.aspx">challenge79</category></item><item><title>TSQL Challenge 79 – Basic Testing Sandbox</title><link>http://blog.beyondrelational.com/blogs/tc/archive/2012/04/21/tsql-challenge-79-basic-testing-sandbox.aspx</link><pubDate>Sat, 21 Apr 2012 06:59:00 GMT</pubDate><guid isPermaLink="false">6e5011fa-7db5-4df3-bb79-9085c1d333b3:15622</guid><dc:creator>puzzles</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Just published a sandbox for the basic testing of &lt;a href="http://beyondrelational.com/puzzles/challenges/113/finding-the-islands.aspx"&gt;TSQL Challenge 79 - Finding the Islands&lt;/a&gt;. &lt;a title="http://beyondrelational.com/puzzles/tsql/challenges/79/basic-testing-sandbox.aspx" href="http://beyondrelational.com/puzzles/tsql/challenges/79/basic-testing-sandbox.aspx"&gt;http://beyondrelational.com/puzzles/tsql/challenges/79/basic-testing-sandbox.aspx&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blog.beyondrelational.com/aggbug.aspx?PostID=15622" width="1" height="1"&gt;</description><category domain="http://blog.beyondrelational.com/blogs/tc/archive/tags/TC_5F00_Challenge/default.aspx">TC_Challenge</category><category domain="http://blog.beyondrelational.com/blogs/tc/archive/tags/TSQL+Challenge/default.aspx">TSQL Challenge</category><category domain="http://blog.beyondrelational.com/blogs/tc/archive/tags/SQL+Server/default.aspx">SQL Server</category><category domain="http://blog.beyondrelational.com/blogs/tc/archive/tags/_2300_SQLServer/default.aspx">#SQLServer</category><category domain="http://blog.beyondrelational.com/blogs/tc/archive/tags/BRH2/default.aspx">BRH2</category><category domain="http://blog.beyondrelational.com/blogs/tc/archive/tags/TSQL+Challenge+79/default.aspx">TSQL Challenge 79</category><category domain="http://blog.beyondrelational.com/blogs/tc/archive/tags/TC_5F00_Challenge+79/default.aspx">TC_Challenge 79</category><category domain="http://blog.beyondrelational.com/blogs/tc/archive/tags/TCchallenge79/default.aspx">TCchallenge79</category><category domain="http://blog.beyondrelational.com/blogs/tc/archive/tags/challenge79/default.aspx">challenge79</category></item><item><title>File Upload in ASP.NET MVC3</title><link>http://blog.beyondrelational.com/blogs/jalpesh/archive/2012/04/20/file-upload-in-asp-net-mvc3.aspx</link><pubDate>Thu, 19 Apr 2012 19:54:33 GMT</pubDate><guid isPermaLink="false">6e5011fa-7db5-4df3-bb79-9085c1d333b3:15621</guid><dc:creator>Jalpesh</dc:creator><slash:comments>0</slash:comments><description>If you are a web developer you often need to upload file on the web server or database. In today’s post I am going explain how we can upload file in ASP.NET MVC 3 with razor syntax. So, first thing we need to create a view that will contain the file upload control. I am going to use an existing asp.net mvc template for this demo. So I have just modified the default Index view like following. @{ ViewBag.Title = &amp;quot;Home Page&amp;quot;; } &amp;lt;h2&amp;gt;@ViewBag.Message&amp;lt;/h2&amp;gt; &amp;lt;p&amp;gt; To learn more...(&lt;a href="http://blog.beyondrelational.com/blogs/jalpesh/archive/2012/04/20/file-upload-in-asp-net-mvc3.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://blog.beyondrelational.com/aggbug.aspx?PostID=15621" width="1" height="1"&gt;</description><category domain="http://blog.beyondrelational.com/blogs/jalpesh/archive/tags/ASP.NET/default.aspx">ASP.NET</category><category domain="http://blog.beyondrelational.com/blogs/jalpesh/archive/tags/ASP.NET+MVC/default.aspx">ASP.NET MVC</category><category domain="http://blog.beyondrelational.com/blogs/jalpesh/archive/tags/FileUpload/default.aspx">FileUpload</category></item><item><title>Invoke JavaScript Functions through Silverlight Application</title><link>http://blog.beyondrelational.com/blogs/niladribiswas/archive/2012/04/16/invoke-javascript-functions-through-silverlight-application.aspx</link><pubDate>Tue, 17 Apr 2012 02:37:00 GMT</pubDate><guid isPermaLink="false">6e5011fa-7db5-4df3-bb79-9085c1d333b3:15619</guid><dc:creator>Niladri Biswas</dc:creator><slash:comments>0</slash:comments><description>&lt;h2&gt;Introduction&lt;/h2&gt;
&lt;p&gt;In this article, I will show how to invoke Javascript methods from Silverlight. We will learn this by performing a simple calculator example with some basic arithmetical functionalities being expose.&lt;/p&gt;

&lt;h2&gt;What we need to perform the experiment?&lt;/h2&gt;
&lt;p&gt;Well for doing this experiment, what we need is the following&lt;/p&gt;
	&lt;ol&gt;
		&lt;li&gt;VS 2010&lt;/li&gt;
		&lt;li&gt;Asp.net&lt;/li&gt;
		&lt;li&gt;Silverlight&lt;/li&gt;		
	&lt;/ol&gt;
&lt;h2&gt;Steps to perform the experiment&lt;/h2&gt;
&lt;p&gt;&lt;b&gt;Step 1:&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Open the VS2010 and File-&amp;gt;New-&amp;gt;Project-&amp;gt;Silverlight(Choose from installed templates) and choose Silverlight Applications.Give a proper name to the Application and click on OK button&lt;/p&gt;
&lt;p&gt;In the next screen &amp;quot;New Silverlight Application&amp;quot; that appears, keep everything as it is and click on the OK button&lt;/p&gt;
&lt;p&gt;Two projects will be created in the solution explorer - one for Silverlight by the name &amp;quot;SilverlightApplication1&amp;quot; and the other for is WebApplication by &amp;quot;SilverlightApplication1.Web&amp;quot;.&lt;/p&gt;

&lt;p&gt;&lt;b&gt;Step 2:&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;We will now design our Silverlight page.So open MainPage.xaml and write the below xaml code&lt;/p&gt;
&lt;pre class="brush:sql"&gt;
&amp;lt;UserControl x:Class=&amp;quot;SilverlightApplication1.MainPage&amp;quot;
    xmlns=&amp;quot;http://schemas.microsoft.com/winfx/2006/xaml/presentation&amp;quot;
    xmlns:x=&amp;quot;http://schemas.microsoft.com/winfx/2006/xaml&amp;quot;
    xmlns:d=&amp;quot;http://schemas.microsoft.com/expression/blend/2008&amp;quot;
    xmlns:mc=&amp;quot;http://schemas.openxmlformats.org/markup-compatibility/2006&amp;quot;
    mc:Ignorable=&amp;quot;d&amp;quot;
    d:DesignHeight=&amp;quot;300&amp;quot; d:DesignWidth=&amp;quot;400&amp;quot; xmlns:sdk=&amp;quot;http://schemas.microsoft.com/winfx/2006/xaml/presentation/sdk&amp;quot;&amp;gt;

    &amp;lt;Grid x:Name=&amp;quot;LayoutRoot&amp;quot; Background=&amp;quot;White&amp;quot;&amp;gt;
        &amp;lt;sdk:Label Height=&amp;quot;28&amp;quot; HorizontalAlignment=&amp;quot;Left&amp;quot; Margin=&amp;quot;18,27,0,0&amp;quot; Name=&amp;quot;label1&amp;quot; VerticalAlignment=&amp;quot;Top&amp;quot; Width=&amp;quot;120&amp;quot; Content=&amp;quot;Enter First Value&amp;quot; /&amp;gt;
        &amp;lt;TextBox Height=&amp;quot;23&amp;quot; HorizontalAlignment=&amp;quot;Left&amp;quot; Margin=&amp;quot;144,27,0,0&amp;quot; Name=&amp;quot;txtVal1&amp;quot; VerticalAlignment=&amp;quot;Top&amp;quot; Width=&amp;quot;216&amp;quot; /&amp;gt;
        &amp;lt;sdk:Label Content=&amp;quot;Enter Second Value&amp;quot; Height=&amp;quot;28&amp;quot; HorizontalAlignment=&amp;quot;Left&amp;quot; Margin=&amp;quot;18,61,0,0&amp;quot; Name=&amp;quot;label2&amp;quot; VerticalAlignment=&amp;quot;Top&amp;quot; Width=&amp;quot;120&amp;quot; /&amp;gt;
        &amp;lt;TextBox Height=&amp;quot;23&amp;quot; HorizontalAlignment=&amp;quot;Left&amp;quot; Margin=&amp;quot;144,61,0,0&amp;quot; Name=&amp;quot;txtVal2&amp;quot; VerticalAlignment=&amp;quot;Top&amp;quot; Width=&amp;quot;216&amp;quot; /&amp;gt;
        &amp;lt;sdk:Label Content=&amp;quot;Result&amp;quot; Height=&amp;quot;28&amp;quot; HorizontalAlignment=&amp;quot;Left&amp;quot; Margin=&amp;quot;18,109,0,0&amp;quot; Name=&amp;quot;label3&amp;quot; VerticalAlignment=&amp;quot;Top&amp;quot; Width=&amp;quot;120&amp;quot; /&amp;gt;
        &amp;lt;TextBlock Height=&amp;quot;23&amp;quot; HorizontalAlignment=&amp;quot;Left&amp;quot; Margin=&amp;quot;144,109,0,0&amp;quot; Name=&amp;quot;txtResult&amp;quot; Text=&amp;quot;&amp;quot; VerticalAlignment=&amp;quot;Top&amp;quot; Width=&amp;quot;216&amp;quot; /&amp;gt;
        &amp;lt;Button Content=&amp;quot;Add&amp;quot; Height=&amp;quot;23&amp;quot; HorizontalAlignment=&amp;quot;Left&amp;quot; Margin=&amp;quot;20,165,0,0&amp;quot; Name=&amp;quot;btnAdd&amp;quot; VerticalAlignment=&amp;quot;Top&amp;quot; Width=&amp;quot;75&amp;quot; Click=&amp;quot;btnClick&amp;quot; /&amp;gt;
        &amp;lt;Button Content=&amp;quot;Subtract&amp;quot; Height=&amp;quot;23&amp;quot; HorizontalAlignment=&amp;quot;Left&amp;quot; Margin=&amp;quot;109,165,0,0&amp;quot; Name=&amp;quot;btnSub&amp;quot; VerticalAlignment=&amp;quot;Top&amp;quot; Width=&amp;quot;75&amp;quot; Click=&amp;quot;btnClick&amp;quot;/&amp;gt;
        &amp;lt;Button Content=&amp;quot;Multiply&amp;quot; Height=&amp;quot;23&amp;quot; HorizontalAlignment=&amp;quot;Left&amp;quot; Margin=&amp;quot;206,165,0,0&amp;quot; Name=&amp;quot;btnMul&amp;quot; VerticalAlignment=&amp;quot;Top&amp;quot; Width=&amp;quot;75&amp;quot; Click=&amp;quot;btnClick&amp;quot; /&amp;gt;
        &amp;lt;Button Content=&amp;quot;Divide&amp;quot; Height=&amp;quot;23&amp;quot; HorizontalAlignment=&amp;quot;Left&amp;quot; Margin=&amp;quot;301,165,0,0&amp;quot; Name=&amp;quot;btnDiv&amp;quot; VerticalAlignment=&amp;quot;Top&amp;quot; Width=&amp;quot;75&amp;quot; Click=&amp;quot;btnClick&amp;quot;/&amp;gt;
    &amp;lt;/Grid&amp;gt;
&amp;lt;/UserControl&amp;gt;
&lt;/pre&gt;

&lt;p&gt;&lt;b&gt;N.B.~&lt;/b&gt;As can be figure out that we have a common event handler for all the button controls which is &lt;b&gt;btnClick&lt;/b&gt;&lt;/p&gt;

&lt;p&gt;&lt;b&gt;Step 3:&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Next write the below code piece in the btnClick event&lt;/p&gt;
&lt;pre class="brush:sql"&gt;
private void btnClick(object sender, RoutedEventArgs e)
{
	var btnName = (sender as Button).Content;
	switch (btnName.ToString())
	{
		case &amp;quot;Add&amp;quot;:InvokeJS((object)new object[]{ (object)txtVal1.Text, (object)txtVal2.Text,(object)&amp;quot;+&amp;quot; });
			break;
		case &amp;quot;Subtract&amp;quot;: InvokeJS((object)new object[] { (object)txtVal1.Text, (object)txtVal2.Text, (object)&amp;quot;-&amp;quot; });
			break;
		case &amp;quot;Multiply&amp;quot;: InvokeJS((object)new object[] { (object)txtVal1.Text, (object)txtVal2.Text, (object)&amp;quot;*&amp;quot; });
			break;
		case &amp;quot;Divide&amp;quot;: InvokeJS((object)new object[] { (object)txtVal1.Text, (object)txtVal2.Text, (object)&amp;quot;/&amp;quot; });
			break;
	}

} 
&lt;/pre&gt;
&lt;p&gt;The &lt;b&gt;InvokeJS&lt;/b&gt; function is as under&lt;/p&gt;
&lt;pre class="brush:sql"&gt;
void InvokeJS(params object[] items)
{
	object result = System.Windows.Browser.HtmlPage.Window.Invoke(&amp;quot;DoOperation&amp;quot;, items);
	txtResult.Text = result.ToString();
}
&lt;/pre&gt;
&lt;p&gt;The HtmlPage.Window.Invoke method invokes a method on the current scriptable object(here Javascript) and optionally passes in one or more method parameters.&lt;/p&gt;
&lt;p&gt;So in this case &lt;b&gt;&lt;i&gt;DoOperation&lt;/i&gt;&lt;/b&gt; is the javascript function name and we are passing an object array comprising of three elements viz. First Number, Second Number and the Operator&lt;/p&gt; 

&lt;p&gt;&lt;b&gt;Step 4:&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Open the &lt;b&gt;SilverlightApplication1TestPage.aspx&lt;/b&gt; and implement the &lt;b&gt;&lt;i&gt;DoOperation&lt;/i&gt;&lt;/b&gt; javascript function&lt;/p&gt;
&lt;pre class="brush:sql"&gt;
//Invoke this function from silverlight
function DoOperation(params) 
{
	var result = 0;
	switch (params[2])   //params[2] is the operator(s) i.e. +,-,*,/
	{
		case &amp;#39;+&amp;#39;: result = parseInt(params[0]) + parseInt(params[1]); break;
		case &amp;#39;-&amp;#39;: result = params[0] - params[1]; break;
		case &amp;#39;*&amp;#39;: result = params[0] * params[1]; break;
		case &amp;#39;/&amp;#39;: result = params[0] / params[1]; break;
		default: alert(&amp;quot;No such operation available&amp;quot;);
	}
	return result;
}
&lt;/pre&gt;
&lt;p&gt;&lt;b&gt;Step 5:&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;So now we are all set.Build the solution.Make the SilverlightApplication1 as the startup project.Run the application&lt;/p&gt;
&lt;p&gt;Zip file is attached&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blog.beyondrelational.com/aggbug.aspx?PostID=15619" width="1" height="1"&gt;</description><enclosure url="http://blog.beyondrelational.com/cfs-file.ashx/__key/CommunityServer.Components.PostAttachments/00.00.01.56.19/InvokeJavascriptFunctionFromSilverlight.zip" length="857982" type="application/x-zip-compressed" /><category domain="http://blog.beyondrelational.com/blogs/niladribiswas/archive/tags/javascript/default.aspx">javascript</category><category domain="http://blog.beyondrelational.com/blogs/niladribiswas/archive/tags/silverlight/default.aspx">silverlight</category></item><item><title>I am speaking at…</title><link>http://blog.beyondrelational.com/blogs/jason/archive/2012/04/16/i-am-speaking-at.aspx</link><pubDate>Tue, 17 Apr 2012 00:30:00 GMT</pubDate><guid isPermaLink="false">6e5011fa-7db5-4df3-bb79-9085c1d333b3:15618</guid><dc:creator>Jason Thomas</dc:creator><slash:comments>0</slash:comments><description>&lt;p align="justify"&gt;&lt;span style="font-size:x-small;"&gt;And so, it has been an eventful 3 months since I reached the US, and I must say I am really settling in well to my new job and life here. Also, it has been a full two years since I started blogging and a big shout to all those lovely people out there who have been tolerating me and my &amp;ldquo;random thoughts&amp;rdquo;. I decided that it is time to start meeting all those great guys around me and what better way than to come and speak at an event near you?&lt;/span&gt;&lt;/p&gt;
&lt;p align="justify"&gt;&lt;a href="http://beyondrelational.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/jason/DSC_5F00_01127_5F00_3CA4BBC1.jpg"&gt;&lt;img height="265" width="449" src="http://beyondrelational.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/jason/DSC_5F00_01127_5F00_thumb_5F00_0D069D35.jpg" alt="DSC_01127" border="0" title="DSC_01127" style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:block;float:none;border-top-width:0px;border-bottom-width:0px;margin-left:auto;border-left-width:0px;margin-right:auto;padding-top:0px;" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p align="justify"&gt;&lt;span style="font-size:x-small;"&gt;So just as an FYI, I would like to let you know that I am speaking at the following events :-&lt;/span&gt;&lt;/p&gt;
&lt;p align="justify"&gt;&lt;span style="font-size:x-small;"&gt;&lt;strong&gt;1)&lt;/strong&gt; &lt;strong&gt;Charlotte SQL Server User Group&lt;/strong&gt; : Thursday, April 19, 2012 from 5:30 PM to 7:30 PM &lt;/span&gt;&lt;a href="http://apr2012cssug.eventbrite.com/"&gt;&lt;span style="font-size:x-small;"&gt;http://apr2012cssug.eventbrite.com/&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p align="justify"&gt;&lt;span style="font-size:x-small;"&gt;&lt;strong&gt;2)&lt;/strong&gt; &lt;strong&gt;SQL Saturday 118 (Madison, WI) &lt;/strong&gt;: Saturday, April 21, 2012 from 9:30 AM to 10:30 AM &lt;/span&gt;&lt;a href="http://www.sqlsaturday.com/118/schedule.aspx"&gt;&lt;span style="font-size:x-small;"&gt;http://www.sqlsaturday.com/118/schedule.aspx&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p align="justify"&gt;&lt;span style="font-size:x-small;"&gt;&lt;strong&gt;3)&lt;/strong&gt; &lt;strong&gt;SQL Saturday 130 (Jacksonville, FL)&lt;/strong&gt; : Saturday, April 28, 2012 from 3:45 PM to 4:45 PM &lt;/span&gt;&lt;a href="http://www.sqlsaturday.com/130/schedule.aspx"&gt;&lt;span style="font-size:x-small;"&gt;http://www.sqlsaturday.com/130/schedule.aspx&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p align="justify"&gt;&lt;span style="font-size:x-small;"&gt;&lt;strong&gt;4)&lt;/strong&gt; &lt;strong&gt;SQL Saturday 129 (Rochester, NY)&lt;/strong&gt; : Saturday, May 12, 2012 from 10:15 AM to 11:15 AM &lt;/span&gt;&lt;a href="http://www.sqlsaturday.com/129/schedule.aspx"&gt;&lt;span style="font-size:x-small;"&gt;http://www.sqlsaturday.com/129/schedule.aspx&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p align="justify"&gt;&lt;span style="font-size:x-small;"&gt;Don&amp;rsquo;t forget to come and talk to me if you are attending any of these events, nothing makes me more happy than getting to know my readers better. Well, actually I am lying, a mug of beer makes me happier. But then there is no reason why we can&amp;rsquo;t have a talk over a beer, right?&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blog.beyondrelational.com/aggbug.aspx?PostID=15618" width="1" height="1"&gt;</description><category domain="http://blog.beyondrelational.com/blogs/jason/archive/tags/_2300_BI/default.aspx">#BI</category></item><item><title>Difference between SkipWhile and Where in linq</title><link>http://blog.beyondrelational.com/blogs/jalpesh/archive/2012/04/17/difference-between-skipwhile-and-where-in-linq.aspx</link><pubDate>Mon, 16 Apr 2012 19:48:56 GMT</pubDate><guid isPermaLink="false">6e5011fa-7db5-4df3-bb79-9085c1d333b3:15617</guid><dc:creator>Jalpesh</dc:creator><slash:comments>0</slash:comments><description>Before some time I have written a blog post about the SkipWhile operator and a reader of my blog asked me that we can do the same thing with Where also but there is a difference between this two. So In this post I am going to explain you difference between those two. Where operator filters a list of collection based on condition. It will filter whole collection while SkipWhile will only skip those elements in list until condition is true and after that it will stop filtering of skipping. Now let...(&lt;a href="http://blog.beyondrelational.com/blogs/jalpesh/archive/2012/04/17/difference-between-skipwhile-and-where-in-linq.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://blog.beyondrelational.com/aggbug.aspx?PostID=15617" width="1" height="1"&gt;</description><category domain="http://blog.beyondrelational.com/blogs/jalpesh/archive/tags/C_2300_.NET/default.aspx">C#.NET</category><category domain="http://blog.beyondrelational.com/blogs/jalpesh/archive/tags/_2300_LINQ/default.aspx">#LINQ</category><category domain="http://blog.beyondrelational.com/blogs/jalpesh/archive/tags/LINQ/default.aspx">LINQ</category></item><item><title>Removing unwanted characters - Part 3</title><link>http://blog.beyondrelational.com/blogs/madhivanan/archive/2012/04/16/removing-unwanted-characters-part-3.aspx</link><pubDate>Mon, 16 Apr 2012 06:03:00 GMT</pubDate><guid isPermaLink="false">6e5011fa-7db5-4df3-bb79-9085c1d333b3:15593</guid><dc:creator>Madhivanan</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;In this series at Part 1 &lt;a target="_blank" href="http://beyondrelational.com/blogs/madhivanan/archive/2009/05/11/removing-unwanted-characters.aspx"&gt;&lt;span style="color:#3366cc;"&gt;&lt;strong&gt;Removing unwanted characters&lt;/strong&gt;&lt;/span&gt;&lt;/a&gt; , I posted a method that used a function. In &lt;strong&gt;&lt;a target="_blank" href="http://beyondrelational.com/modules/2/blogs/70/posts/10882/removing-unwanted-characters-part-2.aspx"&gt;part 2&lt;/a&gt;&lt;/strong&gt; I posted a method that used Dynamic SQL. &lt;br /&gt;&lt;br /&gt;Here is another improved method that uses Dynamic SQL&lt;/p&gt;
&lt;pre class="brush:sql"&gt;--Create test data

create table #data (data varchar(100))

insert #data 
select &amp;#39;tes^@&amp;amp;t %stri)-n!g&amp;#39; data union all
select &amp;#39;))aaer***********)&amp;#39; union all
select &amp;#39;&amp;amp;^&amp;amp;&amp;amp;hsdf()&amp;#39; union all
select &amp;#39;jj&amp;amp;wk&amp;#39; union all
select &amp;#39;)hw*pa&amp;#39; union all
select &amp;#39;No&amp;amp;@#$53*24,Mai()$n R--!oad&amp;#39;

--Create table that has all set of characters to be removed

create table clean_chars (char_id int identity(1,1),chars char(1))

insert into clean_chars (chars)
select &amp;#39;^&amp;#39; as repl union all 
select &amp;#39;)&amp;#39; union all
select &amp;#39;(&amp;#39; union all
select &amp;#39;&amp;amp;&amp;#39; union all
select &amp;#39;*&amp;#39; union all
select &amp;#39;%&amp;#39; union all
select &amp;#39;@&amp;#39; union all
select &amp;#39;-&amp;#39; union all
select &amp;#39;,&amp;#39; union all
select &amp;#39;#&amp;#39; union all
select &amp;#39;$&amp;#39; union all
select &amp;#39;#&amp;#39; union all
select &amp;#39;!&amp;#39; 

 declare @sql varchar(max), @select varchar(max)
 select @sql=&amp;#39;&amp;#39;,@select=&amp;#39;&amp;#39;
 select @select=@select+&amp;#39;replace(&amp;#39;, @sql=@sql+&amp;#39;,&amp;#39;&amp;#39;&amp;#39;+chars+&amp;#39;&amp;#39;&amp;#39;,&amp;#39;&amp;#39;&amp;#39;&amp;#39;)&amp;#39; from clean_chars

 select @select=&amp;#39;select data,&amp;#39;+@select+&amp;#39;data&amp;#39;+@sql+&amp;#39; as cleaned_data from #data&amp;#39; 
 exec(@select)

&lt;/pre&gt;
&lt;p&gt;The result is &lt;/p&gt;
&lt;pre class="brush:sql"&gt;data                                cleaned_data
--------------------------------------------------------
tes^@&amp;amp;t %stri)-n!g                  test string
))aaer***********)                  aaer
&amp;amp;^&amp;amp;&amp;amp;hsdf()                          hsdf
jj&amp;amp;wk                               jjwk
)hw*pa                              hwpa
No&amp;amp;@#$53*24,Mai()$n R--!oad         No5324Main Road


&lt;/pre&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blog.beyondrelational.com/aggbug.aspx?PostID=15593" width="1" height="1"&gt;</description><category domain="http://blog.beyondrelational.com/blogs/madhivanan/archive/tags/t-sql/default.aspx">t-sql</category><category domain="http://blog.beyondrelational.com/blogs/madhivanan/archive/tags/sql_5F00_server/default.aspx">sql_server</category><category domain="http://blog.beyondrelational.com/blogs/madhivanan/archive/tags/sqlserver/default.aspx">sqlserver</category><category domain="http://blog.beyondrelational.com/blogs/madhivanan/archive/tags/tsql/default.aspx">tsql</category><category domain="http://blog.beyondrelational.com/blogs/madhivanan/archive/tags/remove/default.aspx">remove</category></item><item><title>Tuple in C# 4.0</title><link>http://blog.beyondrelational.com/blogs/jalpesh/archive/2012/04/16/tuple-in-c-4-0.aspx</link><pubDate>Sun, 15 Apr 2012 20:20:00 GMT</pubDate><guid isPermaLink="false">6e5011fa-7db5-4df3-bb79-9085c1d333b3:15616</guid><dc:creator>Jalpesh</dc:creator><slash:comments>0</slash:comments><description>C# 4.0 language includes a new feature called Tuple . Tuple provides us a way of grouping elements of different data type. That enables us to use it a lots places at practical world like we can store a coordinates of graphs etc. In C# 4.0 we can create Tuple with Create method. This Create method offer 8 overload like following. So you can group maximum 8 data types with a Tuple. Followings are overloads of a data type. Create(T1)- Which represents a tuple of size 1 Create(T1,T2)- Which represents...(&lt;a href="http://blog.beyondrelational.com/blogs/jalpesh/archive/2012/04/16/tuple-in-c-4-0.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://blog.beyondrelational.com/aggbug.aspx?PostID=15616" width="1" height="1"&gt;</description><category domain="http://blog.beyondrelational.com/blogs/jalpesh/archive/tags/C_2300_.NET/default.aspx">C#.NET</category><category domain="http://blog.beyondrelational.com/blogs/jalpesh/archive/tags/_2300_DOTNET/default.aspx">#DOTNET</category><category domain="http://blog.beyondrelational.com/blogs/jalpesh/archive/tags/Tuple/default.aspx">Tuple</category></item><item><title>Invoke Silverlight Methods through Javascript</title><link>http://blog.beyondrelational.com/blogs/niladribiswas/archive/2012/04/15/invoke-silverlight-methods-through-javascript.aspx</link><pubDate>Sun, 15 Apr 2012 08:42:00 GMT</pubDate><guid isPermaLink="false">6e5011fa-7db5-4df3-bb79-9085c1d333b3:15615</guid><dc:creator>Niladri Biswas</dc:creator><slash:comments>0</slash:comments><description>&lt;h2&gt;Introduction&lt;/h2&gt;
&lt;p&gt;In this article, I will show how to invoke Silverlight methods from javascript. We will learn this by performing a simple calculator example with some basic arithmetical functionalities being expose.&lt;/p&gt;

&lt;h2&gt;What we need to perform the experiment?&lt;/h2&gt;
&lt;p&gt;Well for doing this experiment, what we need is the following&lt;/p&gt;
	&lt;ol&gt;
		&lt;li&gt;VS 2010&lt;/li&gt;
		&lt;li&gt;Asp.net&lt;/li&gt;
		&lt;li&gt;Silverlight&lt;/li&gt;
		&lt;li&gt;System.Web.Silverlight.dll(If your system does not have this, you can download from &lt;a href="http://www.4shared.com/file/XTxbzdRT/SystemWebSilverlight.html"&gt;here&lt;/a&gt; or any where else if you found a link)&lt;/li&gt;
	&lt;/ol&gt;
&lt;p&gt;&lt;b&gt;N.B.&lt;/b&gt;System.Web.Silverlight.dll in not part of the SDK since Silverlight 3 &lt;/p&gt;

&lt;h2&gt;What is the importance of System.Web.Silverlight.dll?&lt;/h2&gt;
&lt;p&gt;It provides the ASP.NET Silverlight server control that was designed to make it easier to create the object tag needed to describe the silverlight plug-in.Since
this server-side control was removed since Silverlight SDK 3,so we have to build the object tag by ourself.&lt;/p&gt;

&lt;h2&gt;Steps to perform the experiment&lt;/h2&gt;
&lt;p&gt;&lt;b&gt;Step 1:&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Open the VS2010 and File-&amp;gt;New-&amp;gt;Project-&amp;gt;Silverlight(Choose from installed templates) and choose Silverlight Applications.Give a proper name to the Application  and click on OK button&lt;/p&gt;
&lt;p&gt;In the next screen &amp;quot;New Silverlight Application&amp;quot; that appears, keep everything as it is and click on the OK button&lt;/p&gt;
&lt;p&gt;Two projects will be created in the solution explorer - one for Silverlight by the name &amp;quot;SL_JS_Experiment&amp;quot; and the other for is WebApplication by &amp;quot;SL_JS_Experiment.Web&amp;quot;.&lt;/p&gt;

&lt;p&gt;&lt;b&gt;Step 2:&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Next, add a reference to System.Web.Silverlight.dll to the web project which is &amp;quot;SL_JS_Experiment.Web&amp;quot; here&lt;/p&gt;

&lt;p&gt;&lt;b&gt;Step 3:&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;We will now add the basic maths function (Add, Subtract,Multiply, Divide) in the Silverlight code behind which is &amp;quot;MainPage.xaml.cs&amp;quot; file.&lt;/p&gt;
&lt;p&gt;First we need to add &lt;b&gt;System.Windows.Browser.HtmlPage.RegisterScriptableObject(string scriptKey, object instance)&lt;/b&gt; in the Silverlight page constructor&lt;/p&gt;.
&lt;pre class="brush:sql"&gt;
public MainPage()
{
	InitializeComponent();
	System.Windows.Browser.HtmlPage.RegisterScriptableObject(&amp;quot;SilverlightMethods&amp;quot;, this);  
}
&lt;/pre&gt;
&lt;p&gt;The &lt;b&gt;RegisterScriptableObject&lt;/b&gt; method registers a managed object for scriptable access by JavaScript code.&lt;/p&gt;

&lt;p&gt;&lt;b&gt;Step 4:&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Once done, next for every function that we will write, we need to decorate that with the &lt;b&gt;[ScriptableMember]&lt;/b&gt; attribute.This attribute indicates that a specific property, method, or event is accessible to JavaScript callers.It resides in &lt;b&gt;System.Windows.Browser&lt;/b&gt; namespace.&lt;/p&gt;
&lt;pre class="brush:sql"&gt;
[ScriptableMember]
public int Addition(int first, int second)
{
	return (first + second);
}

[ScriptableMember]
public int Subtraction(int first, int second)
{
	return (first - second);
}

[ScriptableMember]
public int Multiplication(int first, int second)
{
	return (first * second);
}

[ScriptableMember]
public int Division(int first, int second)
{
	return (first / second);
}
&lt;/pre&gt;

&lt;p&gt;The complete code is as under&lt;/p&gt;
&lt;pre class="brush:sql"&gt;
using System.Windows.Browser;
using System.Windows.Controls;

namespace SL_JS_Experiment
{
    public partial class MainPage : UserControl
    {
        public MainPage()
        {
            InitializeComponent();
            System.Windows.Browser.HtmlPage.RegisterScriptableObject(&amp;quot;SilverlightMethods&amp;quot;, this); 
        }

        [ScriptableMember]
        public int Addition(int first, int second)
        {
            return (first + second);
        }

        [ScriptableMember]
        public int Subtraction(int first, int second)
        {
            return (first - second);
        }

        [ScriptableMember]
        public int Multiplication(int first, int second)
        {
            return (first * second);
        }

        [ScriptableMember]
        public int Division(int first, int second)
        {
            return (first / second);
        }
    }
}
&lt;/pre&gt;

&lt;p&gt;&lt;b&gt;Step 5:&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Now add new aspx page in the web-application project(SL_JS_Experiment.Web) and call it as &amp;quot;Test.aspx&amp;quot;&lt;/p&gt;

&lt;p&gt;&lt;b&gt;Step 6:&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;We need to register the &amp;quot;System.Web.Silverlight.dll&amp;quot; assembly in our web page.Henceforth, let us add the below line of code on top of the aspx page&lt;/p&gt;
&lt;pre class="brush:sql"&gt;
&amp;lt;%@ Register Assembly=&amp;quot;System.Web.Silverlight&amp;quot; Namespace=&amp;quot;System.Web.UI.SilverlightControls&amp;quot; TagPrefix=&amp;quot;asp&amp;quot; %&amp;gt;
&lt;/pre&gt;
&lt;p&gt;&lt;b&gt;Step 7:&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Now let us complete the design.Write the below code inside the &lt;b&gt;body&lt;/b&gt; tag&lt;/p&gt;
&lt;pre class="brush:sql"&gt;
    &amp;lt;form id=&amp;quot;form1&amp;quot; runat=&amp;quot;server&amp;quot;&amp;gt;
    &amp;lt;asp:ScriptManager ID=&amp;quot;scriptManager&amp;quot; runat=&amp;quot;server&amp;quot; /&amp;gt;
    &amp;lt;asp:Silverlight Height=&amp;quot;100px&amp;quot; ID=&amp;quot;slCtrl&amp;quot; runat=&amp;quot;server&amp;quot; Source=&amp;quot;~/ClientBin/SL_JS_Experiment.xap&amp;quot;
        Width=&amp;quot;100px&amp;quot;&amp;gt;
    &amp;lt;/asp:Silverlight&amp;gt;
    &amp;lt;table&amp;gt;

    &amp;lt;!-- For Input --&amp;gt;
        &amp;lt;tr&amp;gt;
            &amp;lt;td&amp;gt;
               Enter First Value: &amp;lt;input id=&amp;quot;textValue1&amp;quot; type=&amp;quot;text&amp;quot; /&amp;gt;
            &amp;lt;/td&amp;gt;
            &amp;lt;td&amp;gt;
                
            &amp;lt;/td&amp;gt;
            &amp;lt;td&amp;gt;
               Enter Second Value: &amp;lt;input id=&amp;quot;textValue2&amp;quot; type=&amp;quot;text&amp;quot; /&amp;gt;
            &amp;lt;/td&amp;gt;
            &amp;lt;td&amp;gt;
                =
            &amp;lt;/td&amp;gt;
            &amp;lt;td&amp;gt;
                &amp;lt;input id=&amp;quot;textResult&amp;quot; type=&amp;quot;text&amp;quot; readonly=&amp;quot;readonly&amp;quot; /&amp;gt;
            &amp;lt;/td&amp;gt;
         &amp;lt;/tr&amp;gt;

        &amp;lt;!-- For Operations --&amp;gt;
         &amp;lt;tr&amp;gt;
            &amp;lt;td&amp;gt;
                &amp;lt;input id=&amp;quot;btnAdd&amp;quot; type=&amp;quot;button&amp;quot; value=&amp;quot;Add&amp;quot; onclick=&amp;quot;javascript:CallSLFunction(&amp;#39;+&amp;#39;);&amp;quot; /&amp;gt;            
                &amp;lt;input id=&amp;quot;btnSubtract&amp;quot; type=&amp;quot;button&amp;quot; value=&amp;quot;Subtract&amp;quot; onclick=&amp;quot;javascript:CallSLFunction(&amp;#39;-&amp;#39;);&amp;quot; /&amp;gt;            
                &amp;lt;input id=&amp;quot;btnMultiply&amp;quot; type=&amp;quot;button&amp;quot; value=&amp;quot;Multiply&amp;quot; onclick=&amp;quot;javascript:CallSLFunction(&amp;#39;*&amp;#39;);&amp;quot; /&amp;gt;            
                &amp;lt;input id=&amp;quot;btnDivide&amp;quot; type=&amp;quot;button&amp;quot; value=&amp;quot;Divide&amp;quot; onclick=&amp;quot;javascript:CallSLFunction(&amp;#39;/&amp;#39;);&amp;quot; /&amp;gt;
            &amp;lt;/td&amp;gt;            
        &amp;lt;/tr&amp;gt;
    &amp;lt;/table&amp;gt;
    &amp;lt;/form&amp;gt;
&lt;/pre&gt;

&lt;p&gt;The &amp;quot;SL_JS_Experiment.xap&amp;quot; file is found in the ClientBin folder&lt;/p&gt;
&lt;p&gt;&lt;b&gt;N.B.~&lt;/b&gt;A detail about xap file can be found from &lt;a href="http://debugmode.net/2011/03/05/what-is-xap-file-in-silverlight/"&gt;here&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The code is pretty simple to understand. We have two input text-box controls where we will provide the input values and a result text-box(which is read-only) where the output will be presented.&lt;/p&gt;
&lt;p&gt;Also we have 4 buttons that are invoking the &amp;quot;CallSLFunction&amp;quot; function that accepts one argument as operator.&lt;/p&gt;

&lt;p&gt;&lt;b&gt;Step 8:&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Now we will implement the &amp;quot;CallSLFunction&amp;quot; javascript function that is as under&lt;/p&gt;
&lt;pre class="brush:sql"&gt;
function CallSLFunction(operator) 
{
	//variable that stores reference of the asp:Silverlight control
	var slCtrl = document.getElementById(&amp;#39;slCtrl&amp;#39;); 

	//variable that will store the result
	var result = 0;

	if (null != slCtrl) {

		var firstInputValue = document.getElementById(&amp;#39;textValue1&amp;#39;).value;
		var secondInputValue = document.getElementById(&amp;#39;textValue2&amp;#39;).value;

		switch (operator) {
			case &amp;#39;+&amp;#39;:
				result = slCtrl.Content.SilverlightMethods.Addition(firstInputValue, secondInputValue);
				break;
			case &amp;#39;-&amp;#39;:
				result = slCtrl.Content.SilverlightMethods.Subtraction(firstInputValue, secondInputValue);
				break;
			case &amp;#39;*&amp;#39;:
				result = slCtrl.Content.SilverlightMethods.Multiplication(firstInputValue, secondInputValue);
				break;
			case &amp;#39;/&amp;#39;:
				result = slCtrl.Content.SilverlightMethods.Division(firstInputValue, secondInputValue);
				break;
			default:
				alert(&amp;quot;So such operation available&amp;quot;);
		}

		//display the result
		document.getElementById(&amp;#39;textResult&amp;#39;).value = result 
	}
}
&lt;/pre&gt;
&lt;p&gt;Again, it is a simple code where we are invoking the silverlight function based on the operator being passed as argument.&lt;/p&gt;
&lt;p&gt;But the point of interest is how we are invoking the Silverlight function!Well, we are doing so by calling &amp;quot;ScriptKey&amp;quot; of the &lt;b&gt;RegisterScriptableObject&lt;/b&gt; function of Silverlight&lt;/p&gt;

&lt;p&gt;&lt;b&gt;Step 9:&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;So now we are all set.Build the solution.Make the web project (SL_JS_Experiment.Web) as the start-up project and &amp;quot;Test.aspx&amp;quot; as start page. Run the application&lt;/p&gt;

&lt;h2&gt;Conclusion&lt;/h2&gt;
&lt;p&gt;So we have learn as how to invoke silver light function from java script.Hope this article will be helpful as a reference.&lt;/p&gt;
&lt;p&gt;Zip file is attached&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blog.beyondrelational.com/aggbug.aspx?PostID=15615" width="1" height="1"&gt;</description><enclosure url="http://blog.beyondrelational.com/cfs-file.ashx/__key/CommunityServer.Components.PostAttachments/00.00.01.56.15/SL_5F00_JS_5F00_Experiment.zip" length="149726" type="application/x-zip-compressed" /><category domain="http://blog.beyondrelational.com/blogs/niladribiswas/archive/tags/javascript/default.aspx">javascript</category><category domain="http://blog.beyondrelational.com/blogs/niladribiswas/archive/tags/silverlight/default.aspx">silverlight</category></item><item><title>TakeWhile operator in linq</title><link>http://blog.beyondrelational.com/blogs/jalpesh/archive/2012/04/14/takewhile-operator-in-linq.aspx</link><pubDate>Sat, 14 Apr 2012 08:13:34 GMT</pubDate><guid isPermaLink="false">6e5011fa-7db5-4df3-bb79-9085c1d333b3:15614</guid><dc:creator>Jalpesh</dc:creator><slash:comments>0</slash:comments><description>In this post I am going to explain TakeWhile Operator in details. TakeWhile is one of partitioning operator available in Linq. It will take sequence until condition becomes false. Here is the example for that. using System; using System.Collections.Generic; using System.Linq; namespace Linq { class Program { static void Main(string[] args) { int[] numbers ={10,9,8,7,6,5,4,3,2,1}; foreach(var number in numbers.TakeWhile(n=&amp;gt;n&amp;gt;5)) { Console.WriteLine(number); } } } } In the above code you can...(&lt;a href="http://blog.beyondrelational.com/blogs/jalpesh/archive/2012/04/14/takewhile-operator-in-linq.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://blog.beyondrelational.com/aggbug.aspx?PostID=15614" width="1" height="1"&gt;</description><category domain="http://blog.beyondrelational.com/blogs/jalpesh/archive/tags/_2300_LINQ/default.aspx">#LINQ</category><category domain="http://blog.beyondrelational.com/blogs/jalpesh/archive/tags/LINQ/default.aspx">LINQ</category></item><item><title>SkipWhile Method in Linq</title><link>http://blog.beyondrelational.com/blogs/jalpesh/archive/2012/04/14/skipwhile-method-in-linq.aspx</link><pubDate>Fri, 13 Apr 2012 21:40:57 GMT</pubDate><guid isPermaLink="false">6e5011fa-7db5-4df3-bb79-9085c1d333b3:15612</guid><dc:creator>Jalpesh</dc:creator><slash:comments>0</slash:comments><description>I have been playing around linq and I have found great method call SkipWhile method.&amp;#160; SkipWhile methods skips particular element which matches condition in predicate this can be use full in condition where we need to skip elements on particular condition. So let’s take some example. I have written following console application code. using System; using System.Collections.Generic; using System.Linq; namespace Linq { class Program { static void Main(string[] args) { string[] names = { &amp;quot;Jalpesh&amp;quot;...(&lt;a href="http://blog.beyondrelational.com/blogs/jalpesh/archive/2012/04/14/skipwhile-method-in-linq.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://blog.beyondrelational.com/aggbug.aspx?PostID=15612" width="1" height="1"&gt;</description><category domain="http://blog.beyondrelational.com/blogs/jalpesh/archive/tags/C_2300_.NET/default.aspx">C#.NET</category><category domain="http://blog.beyondrelational.com/blogs/jalpesh/archive/tags/_2300_LINQ/default.aspx">#LINQ</category></item><item><title>One more example - No order guaranteed if order by is not specified</title><link>http://blog.beyondrelational.com/blogs/chintak/archive/2012/04/13/one-more-example-no-order-guaranteed-if-order-by-is-not-specified.aspx</link><pubDate>Fri, 13 Apr 2012 16:43:00 GMT</pubDate><guid isPermaLink="false">6e5011fa-7db5-4df3-bb79-9085c1d333b3:15611</guid><dc:creator>Chintak Chhapia</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;As we know that, No order guaranteed if order by is notf &amp;nbsp;explcitly specified. Below is one more example of this.&lt;/p&gt;
&lt;p&gt;Below is the code to pupolate dummy table.&lt;/p&gt;
&lt;pre class="brush: sql"&gt;If OBJECT_ID(&amp;#39;dbo.testTable&amp;#39;) is not null 
	drop table dbo.testTable
Go
Create table dbo.testTable
( c1 int not null,
c2 int not null,
c3 int not null,
c4 int not null)
go
Alter table dbo.testTable add constraint pk_testTable primary key (c1)
go
declare @i int
select @i = 1

set nocount on;
begin tran

while (@i &amp;lt; 1001)
begin
	insert into testTable (c1,c2,c3,c4)
	select @i, @i/2, 10000-(@i/4), @i%2

	select @i = @i + 1
end
commit
go
&lt;/pre&gt;
&lt;p&gt;Now, when we run below query, have a look at rows returned&lt;/p&gt;
&lt;pre class="brush: sql"&gt;select * from testTable
&lt;/pre&gt;
&lt;p&gt;Below is the truncated result of this query.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://beyondrelational.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/chintak/OrderBy1.PNG"&gt;&lt;img src="http://beyondrelational.com/resized-image.ashx/__size/550x0/__key/CommunityServer.Blogs.Components.WeblogFiles/chintak/OrderBy1.PNG" alt="Order By Example" border="0" style="border:1px solid black;" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Now, if we create covering below index and again look at the results, rows are returned in different orders.&lt;/p&gt;
&lt;pre class="brush: sql"&gt;Create index idx_testTable_c3 on testTable(c3) include (c1,c2,c4) 
go 
select * from testTable
&lt;/pre&gt;
&lt;p&gt;Below is the result returned after creating index&lt;/p&gt;
&lt;p&gt;&lt;a href="http://beyondrelational.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/chintak/OrderBy2.PNG"&gt;&lt;img src="http://beyondrelational.com/resized-image.ashx/__size/550x0/__key/CommunityServer.Blogs.Components.WeblogFiles/chintak/OrderBy2.PNG" alt="Order By example 2" border="0" style="border:1px solid black;" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Actually, SQL choose the plan which is the more efficient, when we run below queries, we are able to find the reason. &lt;/p&gt;
&lt;pre class="brush: sql"&gt;set statistics io on 
go 
select * from testTable with(index=0) 
go 
select * from testTable go
&lt;/pre&gt;
&lt;p&gt;Even we can look into why there are less pages when nonclustered index is used, with help of below query &lt;/p&gt;
&lt;pre class="brush: sql"&gt;select * from sys.dm_db_index_physical_stats(db_id(),object_id(&amp;#39;testTable&amp;#39;),NULL,NULL,&amp;#39;DETAILED&amp;#39;)
&lt;/pre&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blog.beyondrelational.com/aggbug.aspx?PostID=15611" width="1" height="1"&gt;</description><category domain="http://blog.beyondrelational.com/blogs/chintak/archive/tags/sql/default.aspx">sql</category><category domain="http://blog.beyondrelational.com/blogs/chintak/archive/tags/order+by/default.aspx">order by</category></item><item><title>How to resolve code analysis issue (CA2000:Call System.IDisposable.Dispose on object before all references to it are out of scope)</title><link>http://blog.beyondrelational.com/blogs/neeraj/archive/2012/04/13/how-to-resolve-code-analysis-issue-ca2000-call-system-idisposable-dispose-on-object-before-all-references-to-it-are-out-of-scope.aspx</link><pubDate>Fri, 13 Apr 2012 08:19:55 GMT</pubDate><guid isPermaLink="false">6e5011fa-7db5-4df3-bb79-9085c1d333b3:15610</guid><dc:creator>Neeraj Kaushik</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;there was problem in source code. I’ll upload corrected version. Sorry for inconvenience.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blog.beyondrelational.com/aggbug.aspx?PostID=15610" width="1" height="1"&gt;</description><category domain="http://blog.beyondrelational.com/blogs/neeraj/archive/tags/_2300_.NET/default.aspx">#.NET</category><category domain="http://blog.beyondrelational.com/blogs/neeraj/archive/tags/_2300_DOTNET/default.aspx">#DOTNET</category><category domain="http://blog.beyondrelational.com/blogs/neeraj/archive/tags/_2300_C_2300_/default.aspx">#C#</category><category domain="http://blog.beyondrelational.com/blogs/neeraj/archive/tags/Refactoring/default.aspx">Refactoring</category></item><item><title>Multicast delegates in c#</title><link>http://blog.beyondrelational.com/blogs/jalpesh/archive/2012/04/13/multicast-delegates-in-c.aspx</link><pubDate>Thu, 12 Apr 2012 19:02:28 GMT</pubDate><guid isPermaLink="false">6e5011fa-7db5-4df3-bb79-9085c1d333b3:15607</guid><dc:creator>Jalpesh</dc:creator><slash:comments>0</slash:comments><description>In yesterday’s post We learn about Delegates and how we can use delegates in C#. In today’s blog post we are going to learn about Multicast delegates. What is Multicast Delegates? As we all know we can assign methods as object to delegate and later on we can call that method with the help delegates. We can also assign more then methods to delegates that is called Multicast delegates. It’s provide functionality to execute more then method at a time. It’s maintain delegates as invocation list (linked...(&lt;a href="http://blog.beyondrelational.com/blogs/jalpesh/archive/2012/04/13/multicast-delegates-in-c.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://blog.beyondrelational.com/aggbug.aspx?PostID=15607" width="1" height="1"&gt;</description><category domain="http://blog.beyondrelational.com/blogs/jalpesh/archive/tags/C_2300_.NET/default.aspx">C#.NET</category><category domain="http://blog.beyondrelational.com/blogs/jalpesh/archive/tags/Delegate/default.aspx">Delegate</category><category domain="http://blog.beyondrelational.com/blogs/jalpesh/archive/tags/Multicast+Delegate/default.aspx">Multicast Delegate</category></item><item><title>Delegates in c#</title><link>http://blog.beyondrelational.com/blogs/jalpesh/archive/2012/04/12/delegates-in-c.aspx</link><pubDate>Wed, 11 Apr 2012 19:54:18 GMT</pubDate><guid isPermaLink="false">6e5011fa-7db5-4df3-bb79-9085c1d333b3:15604</guid><dc:creator>Jalpesh</dc:creator><slash:comments>0</slash:comments><description>I have used delegates in my programming since C# 2.0. But I have seen there are lots of confusion going on with delegates so I have decided to blog about it. In this blog I will explain about delegate basics and use of delegates in C#. What is delegate? We can say a delegate is a type safe function pointer which holds methods reference in object. As per MSDN it&amp;#39;s a type that references to a method. So you can assign more than one methods to delegates with same parameter and same return type....(&lt;a href="http://blog.beyondrelational.com/blogs/jalpesh/archive/2012/04/12/delegates-in-c.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://blog.beyondrelational.com/aggbug.aspx?PostID=15604" width="1" height="1"&gt;</description><category domain="http://blog.beyondrelational.com/blogs/jalpesh/archive/tags/C_2300_.NET/default.aspx">C#.NET</category><category domain="http://blog.beyondrelational.com/blogs/jalpesh/archive/tags/_2300_DOTNET/default.aspx">#DOTNET</category><category domain="http://blog.beyondrelational.com/blogs/jalpesh/archive/tags/.NET/default.aspx">.NET</category><category domain="http://blog.beyondrelational.com/blogs/jalpesh/archive/tags/Delegate/default.aspx">Delegate</category></item><item><title>A New Era in Microsoft Certification</title><link>http://blog.beyondrelational.com/blogs/jeffwharton/archive/2012/04/12/a-new-era-in-microsoft-certification.aspx</link><pubDate>Wed, 11 Apr 2012 13:44:12 GMT</pubDate><guid isPermaLink="false">6e5011fa-7db5-4df3-bb79-9085c1d333b3:15602</guid><dc:creator>Jeff Wharton</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;&lt;font size="2"&gt;Today Microsoft released details of it’s new certification program which is designed to address the growing need for IT Pros and Developers to have skill sets that run both broad and deep.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;At first glance it appears that Microsoft has simply reintroduced acronyms used in previous certification streams (such as MCSD , MCSA and MCSE) however this isn’t so and it’s important to understand that these acronyms now represent new certification structures and requirements, not just a renaming of terminology.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;font size="3"&gt;So What Has Changed?&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;As you can see from the diagram below, the new certification program consists of three core levels:&lt;/font&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;font size="2"&gt;Microsoft Certified Solutions Associate (MCSA) &lt;/font&gt;&lt;/li&gt;    &lt;li&gt;&lt;font size="2"&gt;Microsoft Certified Solutions Expert (MCSE) / Microsoft Certified Solutions Developer (MCSD) &lt;/font&gt;&lt;/li&gt;    &lt;li&gt;&lt;font size="2"&gt;Microsoft Certified Solutions Master (MCSM) &lt;/font&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;font size="2"&gt;You will also notice that Microsoft has introduced &lt;/font&gt;&lt;a href="http://www.microsoft.com/learning/en/us/certification/exam-prep.aspx#recert" target="_blank"&gt;&lt;font size="2"&gt;recertification&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt; as a requirement of MCSD/MCSE level certifications.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://mrwharty.files.wordpress.com/2012/04/snaghtml6e71209e.png"&gt;&lt;img style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" title="SNAGHTML6e71209e" border="0" alt="SNAGHTML6e71209e" src="http://mrwharty.files.wordpress.com/2012/04/snaghtml6e71209e_thumb.png" width="619" height="281" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;u&gt;&lt;font size="2"&gt;Microsoft Certified Solutions Associate (MCSA)&lt;/font&gt;&lt;/u&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;Associate level certifications validate the core skills required to work with a technology at a beginners level. They also represent the prerequisite certifications required to obtain Expert level certification. &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;u&gt;&lt;font size="2"&gt;Microsoft Certified Solutions Expert (MCSE) &amp;amp; Microsoft Certified Solutions Developer (MCSD)&lt;/font&gt;&lt;/u&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;The Expert level is Microsoft’s flagship set of certifications validating that skills obtained are relevant in the constantly changing tech environment. The Microsoft Certified Solutions Expert (MCSE) is the destination for established IT Professionals who have expertise working with Microsoft technology solutions. The Microsoft Certified Solutions Developer (MCSD) is the destination for established Developers who have expertise developing solutions with Microsoft tools.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;As previously stated, Microsoft has also introduced &lt;/font&gt;&lt;a href="http://www.microsoft.com/learning/en/us/certification/exam-prep.aspx#recert" target="_blank"&gt;&lt;font size="2"&gt;recertification&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt; as a requirement of this certification level.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;u&gt;&lt;font size="2"&gt;Microsoft Certified Solutions Master (MCSM)&lt;/font&gt;&lt;/u&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;This certification is for the select few who wish to further differentiate themselves from their peers and achieve the highest level of skills validation.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;font size="3"&gt;Example: SQL Server 2012 Certification Path&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://beyondrelational.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/jeffwharton/SNAGHTML19941c8_5F00_43B97E13.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="SNAGHTML19941c8" border="0" alt="SNAGHTML19941c8" src="http://beyondrelational.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/jeffwharton/SNAGHTML19941c8_5F00_thumb_5F00_6006C033.png" width="604" height="342" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;u&gt;&lt;font size="2"&gt;Microsoft Certified Solutions Associate (MCSA)&lt;/font&gt;&lt;/u&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;&lt;strong&gt;Prerequisite: &lt;/strong&gt;No certification prerequisites exist however Microsoft recommends that candidates have at &lt;strong&gt;least 2 years experience&lt;/strong&gt; with the technology being tested.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;There are three exams required to obtain the MCSA: SQL Server 2012 certification:&lt;/font&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://www.microsoft.com/learning/en/us/exam.aspx?id=70-461" target="_blank"&gt;&lt;font size="2"&gt;Exam 70-461: Querying Microsoft SQL Server 2012&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://www.microsoft.com/learning/en/us/exam.aspx?id=70-462" target="_blank"&gt;&lt;font size="2"&gt;Exam 70-462: Administering Microsoft SQL Server 2012 Databases&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://www.microsoft.com/learning/en/us/exam.aspx?id=70-463" target="_blank"&gt;&lt;font size="2"&gt;Exam 70-463: Implementing a Data Warehouse with Microsoft SQL Server 2012&lt;/font&gt;&lt;/a&gt;&lt;u&gt;&lt;/u&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;SQL Server 2008 Upgrade Path&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Please Note: &lt;/strong&gt;SQL Server 2008 certification exams will be retired in July 2013 and exams 70-457 and 70-458 are expected to be available by August 2012.&lt;/p&gt;  &lt;p&gt;Candidates who have achieved an MCTS on SQL Server 2008 will be able to earn the MCSA: SQL Server 2012 certification by passing two exams: &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Exam 70-457: Transition your MCTS on SQL Server 2008 to SQL Server 2012 (Part 1) &lt;/li&gt;    &lt;li&gt;Exam 70-458. Transition your MCTS on SQL Server 2008 to SQL Server 2012 (Part 2) &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;u&gt;&lt;font size="2"&gt;Microsoft Certified Solutions Expert (MCSE)&lt;/font&gt;&lt;/u&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;&lt;strong&gt;Prerequisite:&lt;/strong&gt; MCSA: SQL Server 2012&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;The MCSE level consist of two platforms (Data and Business Intelligence) and there are two exams (per platform) required to achieve MCSE certification: &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;MCSE: Data Platform: &lt;/font&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://www.microsoft.com/learning/en/us/exam.aspx?id=70-464" target="_blank"&gt;&lt;font size="2"&gt;Exam 70-464: Developing Microsoft SQL Server 2012 Databases&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://www.microsoft.com/learning/en/us/exam.aspx?id=70-465" target="_blank"&gt;&lt;font size="2"&gt;Exam 70-465: Designing Database Solutions for Microsoft SQL Server 2012&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;font size="2"&gt;MCSE: Business Intelligence Platform: &lt;/font&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://www.microsoft.com/learning/en/us/exam.aspx?id=70-466" target="_blank"&gt;&lt;font size="2"&gt;Exam 70-466: Implementing Data Models and Reports with Microsoft SQL Server 2012&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://www.microsoft.com/learning/en/us/exam.aspx?id=70-467" target="_blank"&gt;&lt;font size="2"&gt;Exam 70-467: Designing Business Intelligence Solutions with Microsoft SQL Server 2012&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;SQL Server 2008 Upgrade Path&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Please Note: &lt;/strong&gt;SQL Server 2008 certification exams will be retired in July 2013 and exams 70-457, 70-458, 70-459, and 70-460 are expected to be available by August 2012.&lt;/p&gt;  &lt;p&gt;Candidates who have achieved an MCITP on SQL Server 2008 will be able to earn an MCSE: Data Platform or MCSE: Business Intelligence Platform certification by passing three exams. This upgrade path will also earn the candidate the MCSA: SQL Server 2012 certification.&lt;/p&gt;  &lt;p&gt;MCITP: Database Administrator 2008 / MCITP: Database Developer 2008&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Exam 70-457: Transition your MCTS on SQL Server 2008 to SQL Server 2012 (Part 1) &lt;/li&gt;    &lt;li&gt;Exam 70-458. Transition your MCTS on SQL Server 2008 to SQL Server 2012 (Part 2) &lt;/li&gt;    &lt;li&gt;Exam 70-459: Transition your MCITP: Database Administrator 2008 or MCITP: Database Developer 2008 to Data Platform on SQL Server 2012 &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;MCITP: Business Intelligence 2008&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Exam 70-457: Transition your MCTS on SQL Server 2008 to SQL Server 2012 (Part 1) &lt;/li&gt;    &lt;li&gt;Exam 70-458. Transition your MCTS on SQL Server 2008 to SQL Server 2012 (Part 2) &lt;/li&gt;    &lt;li&gt;Exam 70-460: Transition your MCITP: Business Intelligence 2008 to Business Intelligence on SQL Server 2012 &lt;u&gt;&lt;font size="2"&gt;&lt;/font&gt;&lt;/u&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;u&gt;&lt;font size="2"&gt;Microsoft Certified Solutions Master&lt;/font&gt;&lt;/u&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;The MCSM level consist of two platforms (SQL Server and Intelligence): &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;MCSM: SQL Server&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;&lt;strong&gt;Prerequisite:&lt;/strong&gt; MCSE: Data Platform&lt;/font&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;font size="2"&gt;Full requirements are still being finalised however this level of certification will require the completion of Lab-based and Technical exams&lt;/font&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;font size="2"&gt;MCSM: Intelligence&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;&lt;strong&gt;Prerequisite: &lt;/strong&gt;MCSE: Business Intelligence Platform&lt;/font&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;font size="2"&gt;Full requirements are still being finalised however this level of certification will require the completion of Lab-based and Technical exams&lt;/font&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;u&gt;&lt;font size="2"&gt;Microsoft Certified Architect&lt;/font&gt;&lt;/u&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;&lt;strong&gt;Prerequisite:&lt;/strong&gt; MCSM: SQL Server and MCSM: Intelligence&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;MCA: SQL Server&lt;/font&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;font size="2"&gt;Full requirements are still being finalised&lt;/font&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;&lt;font size="3"&gt;Offers and Promotions&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;Microsoft, in conjunction with Prometric, has released the following offer and promotion to assist candidates with achieving MCSA and/or MCSE certification.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;&lt;u&gt;Certification SKU Offer&lt;/u&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;If you purchase a set of exams to achieve MCSA or MCSE certification, you will receive a 15-20% discount (depending on the number of exams in the set) off the purchase price.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;&lt;u&gt;Two-for-One Promotion&lt;/u&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;Purchase and take a full-priced exam before 30 June 2012 and you will receive, at no cost, a voucher valid for a MCSA or MCSE exam in the same technology. More information about this offer can be found &lt;a href="http://aka.ms/Prometric241" target="_blank"&gt;here&lt;/a&gt;.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;font size="3"&gt;Additional Information&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;Microsoft Certification overview page: &lt;/font&gt;&lt;a href="http://aka.ms/MSCerts" target="_blank"&gt;http://aka.ms/MSCerts&lt;/a&gt;&lt;font size="2"&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;Microsoft Certification overview video: &lt;/font&gt;&lt;a href="http://aka.ms/MSCertsVideo" target="_blank"&gt;http://aka.ms/MSCertsVideo&lt;/a&gt;&lt;font size="2"&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;MCSE information page: &lt;/font&gt;&lt;a href="http://aka.ms/MCSE" target="_blank"&gt;http://aka.ms/MCSE&lt;/a&gt;&lt;font size="2"&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;MCSE video on YouTube: &lt;/font&gt;&lt;a href="http://aka.ms/MCSEvideo" target="_blank"&gt;http://aka.ms/MCSEvideo&lt;/a&gt;&lt;font size="2"&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;MCSE Data Platform: &lt;/font&gt;&lt;a href="http://aka.ms/MCSEDP" target="_blank"&gt;http://aka.ms/MCSEDP&lt;/a&gt;&lt;font size="2"&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;MCSE Business Intelligence: &lt;/font&gt;&lt;a href="http://aka.ms/MCSEBI" target="_blank"&gt;http://aka.ms/MCSEBI&lt;/a&gt;&lt;font size="2"&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;&lt;/font&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blog.beyondrelational.com/aggbug.aspx?PostID=15602" width="1" height="1"&gt;</description><category domain="http://blog.beyondrelational.com/blogs/jeffwharton/archive/tags/SQL+Server/default.aspx">SQL Server</category><category domain="http://blog.beyondrelational.com/blogs/jeffwharton/archive/tags/Certification/default.aspx">Certification</category><category domain="http://blog.beyondrelational.com/blogs/jeffwharton/archive/tags/SQL+Server+2012/default.aspx">SQL Server 2012</category><category domain="http://blog.beyondrelational.com/blogs/jeffwharton/archive/tags/MCSD/default.aspx">MCSD</category><category domain="http://blog.beyondrelational.com/blogs/jeffwharton/archive/tags/MCSM/default.aspx">MCSM</category><category domain="http://blog.beyondrelational.com/blogs/jeffwharton/archive/tags/MCSA/default.aspx">MCSA</category><category domain="http://blog.beyondrelational.com/blogs/jeffwharton/archive/tags/MCSE/default.aspx">MCSE</category></item><item><title>Question of the month Apr 2012 - Why does SQL Server allow only one NULL value on unique constraint?</title><link>http://blog.beyondrelational.com/blogs/madhivanan/archive/2012/04/11/question-of-the-month-apr-2012-why-does-sql-server-allow-only-one-null-value-on-unique-constraint.aspx</link><pubDate>Wed, 11 Apr 2012 06:04:00 GMT</pubDate><guid isPermaLink="false">6e5011fa-7db5-4df3-bb79-9085c1d333b3:15584</guid><dc:creator>Madhivanan</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Run the following code &lt;/p&gt;
&lt;pre class="brush:sql"&gt;	declare @t table(i int unique)
	insert into @t 
	select 1 union all
	select null union all
	select null 
&lt;/pre&gt;
&lt;p&gt;You will get the following error &lt;/p&gt;
&lt;pre class="brush:sql"&gt;Msg 2627, Level 14, State 1, Line 3
Violation of UNIQUE KEY constraint &amp;#39;UQ__#A989971__3BD019979D26A3BB&amp;#39;. Cannot insert duplicate key in object &amp;#39;dbo.@t&amp;#39;. The duplicate key value is ().
The statement has been terminated.

&lt;/pre&gt;
&lt;p&gt;But other RDBMSs like ORACLE, MySQL, etc will allow multiple NULL values on a column defined as Unique key. It is because that NULL values cannot be eaqual to each other&lt;/p&gt;
&lt;p&gt;Why does SQL Server allow only one NULL value on a column that has unique constraint?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blog.beyondrelational.com/aggbug.aspx?PostID=15584" width="1" height="1"&gt;</description><category domain="http://blog.beyondrelational.com/blogs/madhivanan/archive/tags/t-sql/default.aspx">t-sql</category><category domain="http://blog.beyondrelational.com/blogs/madhivanan/archive/tags/sql_5F00_server/default.aspx">sql_server</category><category domain="http://blog.beyondrelational.com/blogs/madhivanan/archive/tags/sqlserver/default.aspx">sqlserver</category><category domain="http://blog.beyondrelational.com/blogs/madhivanan/archive/tags/tsql/default.aspx">tsql</category><category domain="http://blog.beyondrelational.com/blogs/madhivanan/archive/tags/question/default.aspx">question</category></item><item><title>Dynamically creating meta tags in asp.net mvc</title><link>http://blog.beyondrelational.com/blogs/jalpesh/archive/2012/04/11/dynamically-creating-meta-tags-in-asp-net-mvc.aspx</link><pubDate>Tue, 10 Apr 2012 19:43:56 GMT</pubDate><guid isPermaLink="false">6e5011fa-7db5-4df3-bb79-9085c1d333b3:15600</guid><dc:creator>Jalpesh</dc:creator><slash:comments>0</slash:comments><description>As we all know that Meta tag has very important roles in Search engine optimization and if we want to have out site listed with good ranking on search engines then we have to put meta tags. Before some time I have blogged about dynamically creating meta tags in asp.net 2.0/3.5 sites, in this blog post I am going to explain how we can create a meta tag dynamically very easily. To have meta tag dynamically we have to create a meta tag on server-side. So I have created a method like following. public...(&lt;a href="http://blog.beyondrelational.com/blogs/jalpesh/archive/2012/04/11/dynamically-creating-meta-tags-in-asp-net-mvc.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://blog.beyondrelational.com/aggbug.aspx?PostID=15600" width="1" height="1"&gt;</description><category domain="http://blog.beyondrelational.com/blogs/jalpesh/archive/tags/ASP.NET/default.aspx">ASP.NET</category><category domain="http://blog.beyondrelational.com/blogs/jalpesh/archive/tags/ASP.NET+MVC/default.aspx">ASP.NET MVC</category><category domain="http://blog.beyondrelational.com/blogs/jalpesh/archive/tags/MetaTag/default.aspx">MetaTag</category><category domain="http://blog.beyondrelational.com/blogs/jalpesh/archive/tags/SEO/default.aspx">SEO</category></item><item><title>TSQL Challenge 78 – Results of Tricky Testing</title><link>http://blog.beyondrelational.com/blogs/tc/archive/2012/04/10/tsql-challenge-78-results-of-tricky-testing.aspx</link><pubDate>Tue, 10 Apr 2012 12:16:00 GMT</pubDate><guid isPermaLink="false">6e5011fa-7db5-4df3-bb79-9085c1d333b3:15598</guid><dc:creator>puzzles</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;We have completed the ‘tricky testing’ of &lt;a href="http://beyondrelational.com/puzzles/challenges/112/parse-single-field-into-multiple-fields.aspx" target="_blank"&gt;TSQL Challenge 78 - Parse single field into multiple fields&lt;/a&gt; and the result is published &lt;a href="http://beyondrelational.com/puzzles/tsql/challenges/78/logic-testing-results.aspx" target="_blank"&gt;here&lt;/a&gt;. The data used for the tricky testing is given &lt;a href="http://beyondrelational.com/puzzles/tsql/challenges/78/logic-testing-sandbox.aspx" target="_blank"&gt;here&lt;/a&gt;. &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blog.beyondrelational.com/aggbug.aspx?PostID=15598" width="1" height="1"&gt;</description><category domain="http://blog.beyondrelational.com/blogs/tc/archive/tags/tsql+challenges/default.aspx">tsql challenges</category><category domain="http://blog.beyondrelational.com/blogs/tc/archive/tags/results/default.aspx">results</category><category domain="http://blog.beyondrelational.com/blogs/tc/archive/tags/tricky+testing/default.aspx">tricky testing</category><category domain="http://blog.beyondrelational.com/blogs/tc/archive/tags/challenge78/default.aspx">challenge78</category></item><item><title>TSQL Challenge 78 – Tricky Data</title><link>http://blog.beyondrelational.com/blogs/tc/archive/2012/04/10/tsql-challenge-78-tricky-data.aspx</link><pubDate>Tue, 10 Apr 2012 11:56:00 GMT</pubDate><guid isPermaLink="false">6e5011fa-7db5-4df3-bb79-9085c1d333b3:15596</guid><dc:creator>puzzles</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;We are about to start the logic testing of &lt;a href="http://beyondrelational.com/puzzles/challenges/112/parse-single-field-into-multiple-fields.aspx"&gt;TSQL Challenge 78 - Parse single field into multiple fields&lt;/a&gt;.  We have created a sandbox for the tricky testing and you can find it &lt;a href="http://beyondrelational.com/puzzles/tsql/challenges/78/logic-testing-sandbox.aspx"&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blog.beyondrelational.com/aggbug.aspx?PostID=15596" width="1" height="1"&gt;</description><category domain="http://blog.beyondrelational.com/blogs/tc/archive/tags/TSQL/default.aspx">TSQL</category><category domain="http://blog.beyondrelational.com/blogs/tc/archive/tags/Logic+Testing/default.aspx">Logic Testing</category><category domain="http://blog.beyondrelational.com/blogs/tc/archive/tags/tricky+testing+of+solutions/default.aspx">tricky testing of solutions</category><category domain="http://blog.beyondrelational.com/blogs/tc/archive/tags/tsql+challenges+sqlserver/default.aspx">tsql challenges sqlserver</category><category domain="http://blog.beyondrelational.com/blogs/tc/archive/tags/challenge78/default.aspx">challenge78</category></item></channel></rss>
