<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.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/"><channel><title>Guy Burstein : ASP.Net</title><link>http://blogs.msdn.com/bursteg/archive/tags/ASP.Net/default.aspx</link><description>Tags: ASP.Net</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>Getting Started with jQuery in Visual Studio 2008</title><link>http://blogs.msdn.com/bursteg/archive/2009/06/05/getting-started-with-jquery-in-visual-studio-2008.aspx</link><pubDate>Fri, 05 Jun 2009 19:16:47 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9701557</guid><dc:creator>Guy Burstein</dc:creator><slash:comments>3</slash:comments><comments>http://blogs.msdn.com/bursteg/comments/9701557.aspx</comments><wfw:commentRss>http://blogs.msdn.com/bursteg/commentrss.aspx?PostID=9701557</wfw:commentRss><wfw:comment>http://blogs.msdn.com/bursteg/rsscomments.aspx?PostID=9701557</wfw:comment><description>&lt;h1&gt;Getting Started with jQuery in Visual Studio 2008&lt;/h1&gt;  &lt;p&gt;&lt;img style="border-right-width: 0px; margin: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="jQuery IntellSense in Visual Studio 2008" border="0" alt="jQuery IntellSense in Visual Studio 2008" align="right" src="http://blogs.msdn.com/blogfiles/bursteg/WindowsLiveWriter/GettingStartedwithjQueryinVisualStudio20_F0A6/jQuery_c4e63ba1-bcde-4f12-bfe7-1f9bdb19641a.png" width="230" height="80" /&gt;&lt;/p&gt;  &lt;p&gt;In this post I’ll talk about adding &lt;strong&gt;jQuery IntellSense in Visual Studio 2008&lt;/strong&gt;, and how to add jQuery to a simple Web Application inside Visual Studio 2008.&lt;/p&gt;  &lt;h3&gt;jQuery IntelliSense in Visual Studio 2008 - KB946581&lt;/h3&gt;  &lt;p&gt;In order to use &lt;strong&gt;jQuery&lt;/strong&gt; &lt;strong&gt;in Visual Studio 2008 with IntelliSence&lt;/strong&gt; a &lt;a href="http://blogs.msdn.com/webdevtools/archive/2008/02/09/downloadable-hotfix-performance-and-editor-fixes-for-microsoft-visual-studio-2008-and-visual-web-developer-express-2008.aspx"&gt;hotfix&lt;/a&gt; for Visual Studio 2008 must be installed:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;&lt;a href="https://connect.microsoft.com/VisualStudio/Downloads/DownloadDetails.aspx?DownloadID=10826"&gt;Download the hotfix from Connect&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Run the executable and extract its contents to a folder in your hard drive. &lt;/li&gt;    &lt;li&gt;Make sure all instances of Visual Studio 2008 are closed, and run &lt;strong&gt;VS90-KB946581.exe&lt;/strong&gt; from the above folder. &lt;/li&gt; &lt;/ol&gt;  &lt;h3&gt;Download the Latest jQuery Library + Documentation&lt;/h3&gt;  &lt;p&gt;To use &lt;strong&gt;jQuery in Visual Studio 2008&lt;/strong&gt;, and enjoy its IntelliSense, you should download 2 javascript files. One contains the actual jQuery library, and the second contains the library with documentation for &lt;strong&gt;Visual Studio 2008&lt;/strong&gt; to display its &lt;strong&gt;IntelliSense&lt;/strong&gt;.&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Go to &lt;a href="http://docs.jquery.com/Downloading_jQuery#Download_jQuery"&gt;jQuery Official Download Page&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Scroll down and find the &lt;strong&gt;Current Release&lt;/strong&gt; section. &lt;/li&gt;    &lt;li&gt;Download the &lt;strong&gt;Uncompressed&lt;/strong&gt; version (&lt;em&gt;jquery-1.2.6.js&lt;/em&gt;) and the documentation for Visual Studio (&lt;em&gt;jquery-1.2.6-vsdoc.js&lt;/em&gt;). &lt;/li&gt; &lt;/ol&gt;  &lt;h3&gt;Using jQuery in a Visual Studio 2008 Web Application&lt;/h3&gt;  &lt;p&gt;&lt;img style="border-right-width: 0px; margin: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="jQuery IntelliSense in Visual Studio 2008 - KB946581" border="0" alt="jQuery IntelliSense in Visual Studio 2008 - KB946581" align="right" src="http://blogs.msdn.com/blogfiles/bursteg/WindowsLiveWriter/GettingStartedwithjQueryinVisualStudio20_F0A6/image_16d672f5-3fb2-4157-928c-7d8ab9ba564a.png" width="165" height="153" /&gt;In a new Web Application or inside an existing one, add the jQuery scripts into a certain folder.&lt;/p&gt;  &lt;p&gt;In a web page (or a master page), add a reference to the jQuery library:&lt;/p&gt;  &lt;div style="font-family: consolas; background: white; color: black; font-size: 11pt"&gt;   &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;head&lt;/span&gt; &lt;span style="color: red"&gt;runat&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;server&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160; &lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;title&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;jQuery Sample&lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;title&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;strong&gt;&amp;#160; &lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;script&lt;/span&gt; &lt;span style="color: red"&gt;src&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;scripts/jquery-1.2.6.js&amp;quot;&lt;/span&gt;         &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: red"&gt;type&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;text/javascript&amp;quot;&lt;/span&gt; &lt;span style="color: blue"&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;script&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;head&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;Then, in any javascript function you can start using &lt;strong&gt;jQuery&lt;/strong&gt; functions and enjoy the &lt;strong&gt;IntelliSense in Visual Studio 2008&lt;/strong&gt;.&lt;/p&gt;  &lt;p&gt;&lt;img style="border-right-width: 0px; margin: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="jQuery IntelliSense in Visual Studio 2008 - KB946581" border="0" alt="jQuery IntelliSense in Visual Studio 2008 - KB946581" src="http://blogs.msdn.com/blogfiles/bursteg/WindowsLiveWriter/GettingStartedwithjQueryinVisualStudio20_F0A6/image_1e8bdb45-be2b-4e76-a8b9-5542092344d9.png" width="293" height="96" /&gt; &lt;/p&gt;  &lt;h3&gt;A Simple Example of Using jQuery Functions&lt;/h3&gt;  &lt;p&gt;For example, Assuming that you have a page with the following content in it:&lt;/p&gt;  &lt;div style="font-family: consolas; background: white; color: black; font-size: 11pt"&gt;   &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;form&lt;/span&gt; &lt;span style="color: red"&gt;id&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;form1&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;runat&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;server&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;div&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160; &lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;input&lt;/span&gt; &lt;span style="color: red"&gt;type&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;text&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;class&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;inputs&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;id&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;txtName&amp;quot;&lt;/span&gt;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: red"&gt;value&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;Enter Text Here&amp;quot;&lt;/span&gt; &lt;span style="color: blue"&gt;/&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160; &lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;input&lt;/span&gt; &lt;span style="color: red"&gt;type&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;button&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;class&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;inputs&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;id&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;btnSubmit&amp;quot;&lt;/span&gt;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: red"&gt;value&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;Click Me&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;&lt;strong&gt;onclick&lt;/strong&gt;&lt;/span&gt;&lt;span style="color: blue"&gt;&lt;strong&gt;=&amp;quot;handleButtonClick();&lt;/strong&gt;&amp;quot;&lt;/span&gt; &lt;span style="color: blue"&gt;/&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;div&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;form&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;This form contains a single textbox followed by a button.&lt;/p&gt;  &lt;p&gt;&lt;img style="border-right-width: 0px; margin: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="jQuery IntelliSense in Visual Studio 2008 - KB946581" border="0" alt="jQuery IntelliSense in Visual Studio 2008 - KB946581" src="http://blogs.msdn.com/blogfiles/bursteg/WindowsLiveWriter/GettingStartedwithjQueryinVisualStudio20_F0A6/image_4ee94ee5-29c9-4c96-8e69-9abfc7a2249e.png" width="242" height="39" /&gt; &lt;/p&gt;  &lt;p&gt;The &lt;em&gt;handleButtonClick()&lt;/em&gt; function handles the button &lt;em&gt;onclick&lt;/em&gt; event.&lt;/p&gt;  &lt;div style="font-family: consolas; background: white; color: black; font-size: 11pt"&gt;   &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;script&lt;/span&gt; &lt;span style="color: red"&gt;type&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;text/javascript&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160; &lt;span style="color: blue"&gt;function&lt;/span&gt; handleButtonClick() {&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160; }&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;script&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;The way jQuery works is by selecting DOM elements and then doing something with them, such as executing a function or applying some properties. For example:&lt;/p&gt;  &lt;div style="font-family: consolas; background: white; color: black; font-size: 11pt"&gt;   &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;script&lt;/span&gt; &lt;span style="color: red"&gt;type&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;text/javascript&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160; &lt;span style="color: blue"&gt;function&lt;/span&gt; handleButtonClick() {&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;strong&gt;$(&lt;span style="color: #a31515"&gt;&amp;quot;#txtName&amp;quot;&lt;/span&gt;).css(&lt;span style="color: #a31515"&gt;&amp;quot;border&amp;quot;&lt;/span&gt;, &lt;span style="color: #a31515"&gt;&amp;quot;solid 2px red&amp;quot;&lt;/span&gt;);&lt;/strong&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160; }&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;script&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;The above method uses the selector function &lt;strong&gt;$&lt;/strong&gt; to select DOM elements (in this case – a single element with id = txtName) and to apply a style property of a red border. Running this page and clicking the button results in this output:&lt;/p&gt;  &lt;p&gt;&lt;img style="border-right-width: 0px; margin: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="jQuery IntelliSense in Visual Studio 2008 - KB946581" border="0" alt="jQuery IntelliSense in Visual Studio 2008 - KB946581" src="http://blogs.msdn.com/blogfiles/bursteg/WindowsLiveWriter/GettingStartedwithjQueryinVisualStudio20_F0A6/image_c008d991-ab24-451d-89c2-068b7c05b1f8.png" width="249" height="33" /&gt; &lt;/p&gt;  &lt;h3&gt;Summary&lt;/h3&gt;  &lt;p&gt;In this post I talked about the steps you should follow in order to use &lt;strong&gt;jQuery in Visual Studio 2008 with InstelliSense support&lt;/strong&gt;. Then, we used jQuery in a simple web application.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9701557" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/bursteg/archive/tags/Visual+Studio+2008/default.aspx">Visual Studio 2008</category><category domain="http://blogs.msdn.com/bursteg/archive/tags/ASP.Net+MVC/default.aspx">ASP.Net MVC</category><category domain="http://blogs.msdn.com/bursteg/archive/tags/ASP.Net/default.aspx">ASP.Net</category><category domain="http://blogs.msdn.com/bursteg/archive/tags/jQuery/default.aspx">jQuery</category></item><item><title>ASP.Net DomainDataSource with Select Parameters</title><link>http://blogs.msdn.com/bursteg/archive/2009/04/12/asp-net-domaindatasource-with-select-parameters.aspx</link><pubDate>Sun, 12 Apr 2009 10:19:40 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9546234</guid><dc:creator>Guy Burstein</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/bursteg/comments/9546234.aspx</comments><wfw:commentRss>http://blogs.msdn.com/bursteg/commentrss.aspx?PostID=9546234</wfw:commentRss><wfw:comment>http://blogs.msdn.com/bursteg/rsscomments.aspx?PostID=9546234</wfw:comment><description>&lt;h1&gt;ASP.Net DomainDataSource with Select Parameters&lt;/h1&gt;  &lt;p&gt;&lt;img style="border-right-width: 0px; margin: 20px 0px 20px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="ASP.Net DomainDataSource with Select Parameters" border="0" alt="ASP.Net DomainDataSource with Select Parameters" align="right" src="http://blogs.msdn.com/blogfiles/bursteg/WindowsLiveWriter/ASP.NetDomainDataSourcewithParameters_86A0/ASP.Net_68ed1f09-cf87-4003-8cc4-a6d44660da82.jpg" width="235" height="45" /&gt; &lt;/p&gt;  &lt;p&gt;Continuing with &lt;a href="http://blogs.microsoft.co.il/blogs/bursteg/archive/tags/.Net+RIA+Services/default.aspx"&gt;.Net RIA Services&lt;/a&gt; with Silverlight and ASP.Net. In the last port I wrote about &lt;a href="http://blogs.microsoft.co.il/blogs/bursteg/archive/2009/04/11/using-domaindatasource-in-asp-net.aspx"&gt;Using DomainDataSource in ASP.Net&lt;/a&gt;, and showed its basic usage. In this post I’ll show a more advanced scenario in which you want to use a &lt;strong&gt;domain service select method that takes parameters&lt;/strong&gt;, and get the parameter value from a control on the form.&lt;/p&gt;  &lt;p&gt;In the previous post, we had a GridView bound to a &lt;strong&gt;DomainDataSource&lt;/strong&gt; that called a Select Method on the &lt;strong&gt;DomainService&lt;/strong&gt;.&lt;/p&gt;  &lt;div style="font-family: consolas; background: white; color: black; font-size: 10pt"&gt;   &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;GridView&lt;/span&gt; &lt;span style="color: red"&gt;runat&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;ID&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;GridView&amp;quot;&lt;/span&gt; &lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160; &lt;span style="color: red"&gt;AutoGenerateColumns&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;true&amp;quot;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160; &lt;span style="color: red"&gt;DataSourceID&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;customersDataSource&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;GridView&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;DomainDataSource&lt;/span&gt; &lt;span style="color: red"&gt;runat&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;ID&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;customersDataSource&amp;quot;&lt;/span&gt; &lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160; &lt;span style="color: red"&gt;DomainServiceTypeName&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;Samples.Bank.Domain.BankDomainService&amp;quot;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160; &lt;span style="color: red"&gt;SelectMethod&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;GetCustomers&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;DomainDataSource&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;The output was:&lt;/p&gt;  &lt;p&gt;&lt;img style="border-right-width: 0px; margin: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="ASP.Net DomainDataSource with Select Parameters" border="0" alt="ASP.Net DomainDataSource with Select Parameters" src="http://blogs.msdn.com/blogfiles/bursteg/WindowsLiveWriter/ASP.NetDomainDataSourcewithParameters_86A0/image2_82351aac-875a-41b9-b99c-a544a82ecb27.png" width="480" height="283" /&gt;&lt;/p&gt;  &lt;p&gt;Now we want to filter the output list by the &lt;strong&gt;City&lt;/strong&gt; property. To do that, we first have to add a method in our Domain Service that returns the data filtered by a city parameter.&lt;/p&gt;  &lt;div style="font-family: consolas; background: white; color: black; font-size: 10pt"&gt;   &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;public&lt;/span&gt; &lt;span style="color: blue"&gt;class&lt;/span&gt; &lt;span style="color: #2b91af"&gt;BankDomainService&lt;/span&gt; : &lt;span style="color: #2b91af"&gt;LinqToSqlDomainService&lt;/span&gt;&amp;lt;&lt;span style="color: #2b91af"&gt;BankDataContext&lt;/span&gt;&amp;gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;{&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160; &lt;span style="color: blue"&gt;public&lt;/span&gt; &lt;span style="color: #2b91af"&gt;IQueryable&lt;/span&gt;&amp;lt;&lt;span style="color: #2b91af"&gt;Customer&lt;/span&gt;&amp;gt; GetCustomers()&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160; {&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;return&lt;/span&gt; &lt;span style="color: blue"&gt;this&lt;/span&gt;.Context.Customers;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160; }&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&lt;/p&gt;    &lt;div style="font-family: consolas; background: white; color: black; font-size: 10pt"&gt;     &lt;p style="margin: 0px"&gt;&amp;#160; &lt;strong&gt;&lt;span style="color: blue"&gt;public&lt;/span&gt; &lt;span style="color: #2b91af"&gt;IQueryable&lt;/span&gt;&amp;lt;&lt;span style="color: #2b91af"&gt;Customer&lt;/span&gt;&amp;gt; GetCustomersByCity(&lt;span style="color: blue"&gt;string&lt;/span&gt; city)&lt;/strong&gt;&lt;/p&gt;      &lt;p style="margin: 0px"&gt;&lt;strong&gt;&amp;#160; {&lt;/strong&gt;&lt;/p&gt;      &lt;p style="margin: 0px"&gt;&lt;strong&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;if&lt;/span&gt; (city == &lt;span style="color: blue"&gt;null&lt;/span&gt;)&lt;/strong&gt;&lt;/p&gt;      &lt;p style="margin: 0px"&gt;&lt;strong&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;return&lt;/span&gt; GetCustomers();&lt;/strong&gt;&lt;/p&gt;      &lt;p style="margin: 0px"&gt;&lt;strong&gt;&amp;#160;&lt;/strong&gt;&lt;/p&gt;      &lt;p style="margin: 0px"&gt;&lt;strong&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;return&lt;/span&gt; GetCustomers().Where(c =&amp;gt; c.City == city);&lt;/strong&gt;&lt;/p&gt;      &lt;p style="margin: 0px"&gt;&lt;strong&gt;&amp;#160; }&lt;/strong&gt;&lt;/p&gt;   &lt;/div&gt;    &lt;p style="margin: 0px"&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160; ...&lt;/p&gt;    &lt;p style="margin: 0px"&gt;}&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;Notice that &lt;strong&gt;GetCustomersByCity&lt;/strong&gt; method uses the &lt;strong&gt;GetCustomers&lt;/strong&gt; method that returns an &lt;strong&gt;IQueryable&amp;lt;Customer&amp;gt;&lt;/strong&gt; and filters the result by city.&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;To select which city we want to filter by, lets add a ListBox with some items:&lt;/p&gt;  &lt;div style="font-family: consolas; background: white; color: black; font-size: 10pt"&gt;   &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;ListBox&lt;/span&gt; &lt;span style="color: red"&gt;ID&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;lstCities&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;AutoPostBack&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;true&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;runat&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;server&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160; &lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;ListItem&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;Tel Aviv&lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;ListItem&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160; &lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;ListItem&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;Raanana&lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;ListItem&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160; &lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;ListItem&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;Ramat Gan&lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;ListItem&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;ListBox&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;&lt;strong&gt;Note&lt;/strong&gt; that I had to specify AutoPostBack=”true” in make any change to the filter, since this is a server control.&lt;/p&gt;  &lt;p&gt;Now, in order to filter the data source according to the domain method with the select parameter I have to specify a &lt;strong&gt;SelectParameter&lt;/strong&gt; that takes its value from the ListBox, and change the select method to execute.&lt;/p&gt;  &lt;div style="font-family: consolas; background: white; color: black; font-size: 10pt"&gt;   &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;DomainDataSource&lt;/span&gt; &lt;span style="color: red"&gt;runat&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;ID&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;customersDataSource&amp;quot;        &lt;br /&gt;&lt;/span&gt;&lt;span style="color: red"&gt;&amp;#160; DomainServiceTypeName&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;Samples.Bank.Domain.BankDomainService&amp;quot;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160; &lt;span style="color: red"&gt;SelectMethod&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;&lt;strong&gt;GetCustomersByCity&lt;/strong&gt;&amp;quot;&amp;gt;         &lt;br /&gt;        &lt;br /&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160; &lt;strong&gt;&lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;SelectParameters&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;strong&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;ControlParameter&lt;/span&gt; &lt;span style="color: red"&gt;Name&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;city&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;ControlID&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;lstCities&amp;quot;&lt;/span&gt;         &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: red"&gt;PropertyName&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;SelectedValue&amp;quot;&lt;/span&gt;&amp;#160; &lt;span style="color: red"&gt;Type&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;String&amp;quot;&lt;/span&gt; &lt;span style="color: blue"&gt;/&amp;gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;strong&gt;&amp;#160; &lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;SelectParameters&lt;/span&gt;&lt;/strong&gt;&lt;span style="color: blue"&gt;&lt;strong&gt;&amp;gt;          &lt;br /&gt;&lt;/strong&gt;        &lt;br /&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;DomainDataSource&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;Now, If we run the application, we can select items in the ListBox, and the items in the GridView will be filtered by the city value.&lt;/p&gt;  &lt;p&gt;&lt;img style="border-right-width: 0px; margin: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="ASP.Net DomainDataSource with Select Parameters" border="0" alt="ASP.Net DomainDataSource with Select Parameters" src="http://blogs.msdn.com/blogfiles/bursteg/WindowsLiveWriter/ASP.NetDomainDataSourcewithParameters_86A0/image_b7961f1e-83fe-46d9-8be2-e24fd8e6c7d9.png" width="480" height="168" /&gt; &lt;/p&gt;  &lt;p&gt;Enjoy!&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9546234" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/bursteg/archive/tags/.Net+Framework+4.0/default.aspx">.Net Framework 4.0</category><category domain="http://blogs.msdn.com/bursteg/archive/tags/.Net+RIA+Services/default.aspx">.Net RIA Services</category><category domain="http://blogs.msdn.com/bursteg/archive/tags/ASP.Net/default.aspx">ASP.Net</category></item><item><title>Using DomainDataSource in ASP.Net</title><link>http://blogs.msdn.com/bursteg/archive/2009/04/11/using-domaindatasource-in-asp-net.aspx</link><pubDate>Sat, 11 Apr 2009 23:16:05 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9545799</guid><dc:creator>Guy Burstein</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/bursteg/comments/9545799.aspx</comments><wfw:commentRss>http://blogs.msdn.com/bursteg/commentrss.aspx?PostID=9545799</wfw:commentRss><wfw:comment>http://blogs.msdn.com/bursteg/rsscomments.aspx?PostID=9545799</wfw:comment><description>&lt;h1&gt;Using DomainDataSource in ASP.Net&lt;/h1&gt;  &lt;p&gt;&lt;img style="border-right-width: 0px; margin: 20px 0px 20px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="DomainDataSource ASP.Net" border="0" alt="DomainDataSource ASP.Net" align="right" src="http://blogs.msdn.com/blogfiles/bursteg/WindowsLiveWriter/UsingDomainDataSourceinASP.Net_118F0/ASP.Net_5134119b-537f-4d11-ac7b-1d412d2e726c.jpg" width="277" height="53" /&gt; &lt;/p&gt;  &lt;p&gt;In ASP.Net 2.0 we were introduced to this concept of Data Source controls. We got the &lt;strong&gt;ObjectDataSource&lt;/strong&gt;, &lt;strong&gt;XmlDataSource&lt;/strong&gt; and &lt;strong&gt;SqlDataSource&lt;/strong&gt; that let us bind a GridView or a ListBox to some data without having to write any additional code. In .Net Framework 3.5 we got &lt;strong&gt;LinqDataSource&lt;/strong&gt; and with .Net Framework 3.5 – the &lt;strong&gt;EntityDataSource&lt;/strong&gt;. In the future of ASP.Net, among other significant improvements around data access, we get a new way of accessing our data – &lt;strong&gt;DomainDataSource&lt;/strong&gt;.&lt;/p&gt;  &lt;p&gt;The benefits of using the &lt;strong&gt;DomainDataSource&lt;/strong&gt; is that is give us nice separation from the way our Data Model is represented (&lt;a href="http://blogs.microsoft.co.il/blogs/bursteg/archive/tags/LINQ+to+Sql/default.aspx"&gt;LINQ to SQL&lt;/a&gt; vs &lt;a href="http://blogs.microsoft.co.il/blogs/bursteg/archive/tags/Entity+Framework/default.aspx"&gt;EF&lt;/a&gt;, POCO and Cloud) and gives us more control over how the data is being retrieved and manipulated.&lt;/p&gt;  &lt;p&gt;In this post I’ll introduce the &lt;strong&gt;DomainDataSource&lt;/strong&gt; that is already available as part of &lt;a href="http://blogs.microsoft.co.il/blogs/bursteg/archive/tags/.Net+RIA+Services/default.aspx"&gt;.Net RIA Service&lt;/a&gt;, and give a quick walkthrough on how to use it in an ASP.Net Web Forms application.&lt;/p&gt;  &lt;h3&gt;Creating a Data Model and a Domain Service&lt;/h3&gt;  &lt;p&gt;&lt;img style="border-right-width: 0px; margin: 0px 0px 5px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="DomainDataSource ASP.Net" border="0" alt="DomainDataSource ASP.Net" align="right" src="http://blogs.msdn.com/blogfiles/bursteg/WindowsLiveWriter/UsingDomainDataSourceinASP.Net_118F0/image22_6ae7479b-7429-43f1-9e08-cc10c155727f.png" width="297" height="246" mce_src="http://blogs.microsoft.co.il/blogs/bursteg/image_23CD8F17.png" /&gt;Create a new ASP.Net Web Application in Visual Studio 2008.&lt;/p&gt;  &lt;p&gt;Add a Data Model to your application, whether it is a LINQ to SQL data model, an Entity Framework Data Model, or any other data model. In this sample I am using the &lt;a href="http://blogs.microsoft.co.il/files/folders/88139/download.aspx" mce_href="http://blogs.microsoft.co.il/files/folders/88139/download.aspx"&gt;Bank Schema&lt;/a&gt; with LINQ to SQL.&lt;/p&gt;  &lt;p&gt;Make sure to build the project so that Visual Studio will generate the data classes and data context before the next step.&lt;/p&gt;  &lt;p&gt;Add a new &lt;strong&gt;Domain Service&lt;/strong&gt;. Add a new Item to the server project, and select the &lt;strong&gt;Domain Service&lt;/strong&gt; template in the Web category.&lt;/p&gt;  &lt;p&gt;&lt;img style="border-right-width: 0px; margin: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="DomainDataSource ASP.Net" border="0" alt="DomainDataSource ASP.Net" src="http://blogs.msdn.com/blogfiles/bursteg/WindowsLiveWriter/UsingDomainDataSourceinASP.Net_118F0/image25_d29a1229-0491-4fda-a2e7-6b24a8d5e3b3.png" width="480" height="302" mce_src="http://blogs.microsoft.co.il/blogs/bursteg/image_50D25618.png" /&gt; &lt;/p&gt;  &lt;p&gt;After you add this item, the New &lt;strong&gt;Domain Service&lt;/strong&gt; Class Dialog is shown. Select the Data Context (BankDataContext in this sample), select the entities you want to expose and whether you want to allow editing and click OK.&lt;/p&gt;  &lt;p&gt;&lt;img style="border-right-width: 0px; margin: 0px 0px 0px 30px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="DomainDataSource ASP.Net" border="0" alt="DomainDataSource ASP.Net" align="right" src="http://blogs.msdn.com/blogfiles/bursteg/WindowsLiveWriter/UsingDomainDataSourceinASP.Net_118F0/image30_8e7baf10-b4f6-4361-b247-b21a871fa386.png" width="290" height="305" mce_src="http://blogs.microsoft.co.il/blogs/bursteg/image_11A0FFF0.png" /&gt; &lt;/p&gt;  &lt;p&gt;This adds the &lt;strong&gt;BankDomainService.cs&lt;/strong&gt; that contains the code that exposes the data to the client, and &lt;strong&gt;BankDomainService.metadata.cs&lt;/strong&gt; that contains additional metadata, mostly for presentation and validation. &lt;/p&gt;  &lt;p&gt;This is how the &lt;strong&gt;DomainService&lt;/strong&gt; looks like when working with LINQ to SQL. If you were working with the Entity Framework, the base class would be different. It simply contains CRUD methods for working with the data context.&lt;/p&gt;  &lt;div style="font-family: consolas; background: white; color: black; font-size: 12pt"&gt;   &lt;p style="margin: 0px"&gt;&lt;font size="2"&gt;&lt;span style="color: blue"&gt;public&lt;/span&gt; &lt;span style="color: blue"&gt;class&lt;/span&gt; &lt;span style="color: #2b91af"&gt;BankDomainService&lt;/span&gt; : &lt;span style="color: #2b91af"&gt;LinqToSqlDomainService&lt;/span&gt;&amp;lt;&lt;span style="color: #2b91af"&gt;BankDataContext&lt;/span&gt;&amp;gt;&lt;/font&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;font size="2"&gt;{&lt;/font&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;font size="2"&gt;&amp;#160; &lt;span style="color: blue"&gt;public&lt;/span&gt; &lt;span style="color: #2b91af"&gt;IQueryable&lt;/span&gt;&amp;lt;&lt;span style="color: #2b91af"&gt;Customer&lt;/span&gt;&amp;gt; GetCustomers()&lt;/font&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;font size="2"&gt;&amp;#160; {&lt;/font&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;font size="2"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;return&lt;/span&gt; &lt;span style="color: blue"&gt;this&lt;/span&gt;.Context.Customers;&lt;/font&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;font size="2"&gt;&amp;#160; }&lt;/font&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;font size="2"&gt;&amp;#160;&lt;/font&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;font size="2"&gt;&amp;#160; &lt;span style="color: blue"&gt;public&lt;/span&gt; &lt;span style="color: blue"&gt;void&lt;/span&gt; InsertCustomer(&lt;span style="color: #2b91af"&gt;Customer&lt;/span&gt; customer)&lt;/font&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;font size="2"&gt;&amp;#160; {&lt;/font&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;font size="2"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;this&lt;/span&gt;.Context.Customers.InsertOnSubmit(customer);&lt;/font&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;font size="2"&gt;&amp;#160; }&lt;/font&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;font size="2"&gt;&amp;#160;&lt;/font&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;font size="2"&gt;&amp;#160; &lt;span style="color: blue"&gt;public&lt;/span&gt; &lt;span style="color: blue"&gt;void&lt;/span&gt; UpdateCustomer(&lt;span style="color: #2b91af"&gt;Customer&lt;/span&gt; currentCustomer, &lt;span style="color: #2b91af"&gt;Customer&lt;/span&gt; originalCustomer)&lt;/font&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;font size="2"&gt;&amp;#160; {&lt;/font&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;font size="2"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;this&lt;/span&gt;.Context.Customers.Attach(currentCustomer, originalCustomer);&lt;/font&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;font size="2"&gt;&amp;#160; }&lt;/font&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;font size="2"&gt;&amp;#160;&lt;/font&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;font size="2"&gt;&amp;#160; &lt;span style="color: blue"&gt;public&lt;/span&gt; &lt;span style="color: blue"&gt;void&lt;/span&gt; DeleteCustomer(&lt;span style="color: #2b91af"&gt;Customer&lt;/span&gt; customer)&lt;/font&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;font size="2"&gt;&amp;#160; {&lt;/font&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;font size="2"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;this&lt;/span&gt;.Context.Customers.Attach(customer, customer);&lt;/font&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;font size="2"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;this&lt;/span&gt;.Context.Customers.DeleteOnSubmit(customer);&lt;/font&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;font size="2"&gt;&amp;#160; }&lt;/font&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;font size="2"&gt;}&lt;/font&gt;&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;It also adds some new references to &lt;strong&gt;System.ComponentModel.DataAnnotations&lt;/strong&gt;, &lt;strong&gt;System.Web.DomainServices&lt;/strong&gt;, &lt;strong&gt;System.Web.DomainServices.Providers&lt;/strong&gt; and &lt;strong&gt;System.Web.Ria&lt;/strong&gt;.&lt;/p&gt;  &lt;p&gt;In addition to that, a new Http Handler was added to the web.config file. &lt;/p&gt;  &lt;div style="font-family: consolas; background: white; color: black; font-size: 12pt"&gt;   &lt;p style="margin: 0px"&gt;&lt;font size="2"&gt;&lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;httpHandlers&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&lt;font size="2"&gt;&amp;#160; ...&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;font size="2"&gt;&lt;span style="color: blue"&gt;&amp;#160; &amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;add&lt;/span&gt;&lt;span style="color: blue"&gt; &lt;/span&gt;&lt;span style="color: red"&gt;path&lt;/span&gt;&lt;span style="color: blue"&gt;=&lt;/span&gt;&amp;quot;&lt;span style="color: blue"&gt;DataService.axd&lt;/span&gt;&amp;quot;&lt;/font&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;font size="2"&gt;&lt;span style="color: blue"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: red"&gt;verb&lt;/span&gt;&lt;span style="color: blue"&gt;=&lt;/span&gt;&amp;quot;&lt;span style="color: blue"&gt;GET,POST&lt;/span&gt;&amp;quot;&lt;/font&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;font size="2"&gt;&lt;span style="color: blue"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: red"&gt;type&lt;/span&gt;&lt;span style="color: blue"&gt;=&lt;/span&gt;&amp;quot;&lt;span style="color: blue"&gt;System.Web.Ria.DataServiceFactory, System.Web.Ria,          &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Version=2.0.0.0, Culture=neutral,PublicKeyToken=31BF3856AD364E35&lt;/span&gt;&amp;quot;&lt;/font&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;font size="2"&gt;&lt;span style="color: blue"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: red"&gt;validate&lt;/span&gt;&lt;span style="color: blue"&gt;=&lt;/span&gt;&amp;quot;&lt;span style="color: blue"&gt;false&lt;/span&gt;&amp;quot;&lt;span style="color: blue"&gt; /&amp;gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;font size="2"&gt;&lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;httpHandlers&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;&lt;/p&gt;  &lt;h3&gt;Use the DomainDataSource with ASP.Net&lt;/h3&gt;  &lt;p&gt;In a page of your choice, add a GridView control or any control that can bind to a &lt;strong&gt;DataSourceControl&lt;/strong&gt;.&lt;/p&gt;  &lt;div style="font-family: consolas; background: white; color: black; font-size: 10pt"&gt;   &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;GridView&lt;/span&gt; &lt;span style="color: red"&gt;runat&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;ID&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;GridView&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;GridView&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;Add a reference to &lt;strong&gt;System.Web.DomainServices.WebControls.dll&lt;/strong&gt;, and in your page, register the prefix for this namespace:&lt;/p&gt;  &lt;div style="font-family: consolas; background: white; color: black; font-size: 10pt"&gt;   &lt;p style="margin: 0px"&gt;&lt;span style="background: #ffee62"&gt;&amp;lt;%&lt;/span&gt;&lt;span style="color: blue"&gt;@&lt;/span&gt; &lt;span style="color: #a31515"&gt;Register&lt;/span&gt; &lt;span style="color: red"&gt;TagPrefix&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;asp&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;Namespace&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;System.Web.DomainServices.WebControls&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;Assembly&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;System.Web.DomainServices.WebControls&amp;quot;&lt;/span&gt; &lt;span style="background: #ffee62"&gt;%&amp;gt;&lt;/span&gt;&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;Add a &lt;strong&gt;DomainDataSource&lt;/strong&gt; and bind it to the Grid. Notice the in the DomainDataSource declaration I referenced the type of the DomainService with its full namespace, and added which method in it should be used to retrieve data.&lt;/p&gt;  &lt;div style="font-family: consolas; background: white; color: black; font-size: 10pt"&gt;   &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;GridView&lt;/span&gt; &lt;span style="color: red"&gt;runat&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;ID&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;GridView&amp;quot;&lt;/span&gt; &lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160; &lt;span style="color: red"&gt;AutoGenerateColumns&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;true&amp;quot;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160; &lt;span style="color: red"&gt;DataSourceID&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;customersDataSource&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;GridView&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;DomainDataSource&lt;/span&gt; &lt;span style="color: red"&gt;runat&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt; &lt;span style="color: red"&gt;ID&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;customersDataSource&amp;quot;&lt;/span&gt; &lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160; &lt;span style="color: red"&gt;DomainServiceTypeName&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;Samples.Bank.Domain.BankDomainService&amp;quot;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&amp;#160; &lt;span style="color: red"&gt;SelectMethod&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;GetCustomers&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin: 0px"&gt;&lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;DomainDataSource&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;If you now run the application, you’ll see the grid populated with the results.&lt;/p&gt;  &lt;p&gt;&lt;img style="border-right-width: 0px; margin: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="ASP. Net DomainDataSource" border="0" alt="ASP. Net DomainDataSource" src="http://blogs.msdn.com/blogfiles/bursteg/WindowsLiveWriter/UsingDomainDataSourceinASP.Net_118F0/image_c96762b2-8da5-46a8-966a-6d27122915df.png" width="480" height="283" /&gt; &lt;/p&gt;  &lt;p&gt;With &lt;strong&gt;DomainDataSource&lt;/strong&gt; you get more control on how your data is retrieved and manipulated. You can add your logic to the select method, for example – providing a filter by the authenticated user, and add logic in the update methods, such as adding default values before updating the database.&lt;/p&gt;  &lt;p&gt;Enjoy!&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9545799" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/bursteg/archive/tags/.Net+RIA+Services/default.aspx">.Net RIA Services</category><category domain="http://blogs.msdn.com/bursteg/archive/tags/ASP.Net/default.aspx">ASP.Net</category></item></channel></rss>