<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://msmvps.com/utility/FeedStylesheets/atom.xsl" media="screen"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en"><title type="html">Abu&amp;#39;s blog </title><subtitle type="html">Best Enterprise Solution - By thorough Understanding of the Requirements, Proper Architecture, Implementation using Hi Tech. Optimized solution</subtitle><id>http://msmvps.com/blogs/abu/atom.aspx</id><link rel="alternate" type="text/html" href="http://msmvps.com/blogs/abu/default.aspx" /><link rel="self" type="application/atom+xml" href="http://msmvps.com/blogs/abu/atom.aspx" /><generator uri="http://communityserver.org" version="4.1.40407.4157">Community Server</generator><updated>2008-11-26T05:27:00Z</updated><entry><title>Tutorial Windows Communication Foundation (WCF) - ServiceContract &amp; OperationContract - Attributes </title><link rel="alternate" type="text/html" href="/blogs/abu/archive/2009/07/20/tutorial-windows-communication-foundation-wcf-servicecontract-amp-operationcontract-attributes.aspx" /><id>/blogs/abu/archive/2009/07/20/tutorial-windows-communication-foundation-wcf-servicecontract-amp-operationcontract-attributes.aspx</id><published>2009-07-20T13:07:00Z</published><updated>2009-07-20T13:07:00Z</updated><content type="html">&lt;p&gt;&lt;strong&gt;ServiceContractAttribute&amp;nbsp;&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Name&amp;nbsp; and Namespace&lt;/strong&gt; -&amp;nbsp;The name and namespace are the optional attibutes. Default name is same as the contract type and namespace is&amp;nbsp;&lt;a href="http://tempuri.org"&gt;http://tempuri.org&lt;/a&gt;. It is always recommondable to use &lt;strong&gt;Namespace&lt;/strong&gt; to specify proper namespace which remove the conflict of the datatype/contract.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;CallbackContract&lt;/strong&gt; -&amp;nbsp;Return contract in a &lt;strong&gt;two-way (duplex) conversation&lt;/strong&gt;. &lt;/li&gt;
&lt;li&gt;&lt;strong&gt;HasProtectionLevel&lt;/strong&gt; and &lt;strong&gt;ProtectionLevel&lt;/strong&gt; - Specifies whether all messages supporting the contract have a explicit ProtectionLevel value.&lt;br /&gt;Default ProtectionLevel is ProtectionLevel.None.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;ConfigurationName&lt;/strong&gt; - The name of the service element in the configuration file to use. &lt;/li&gt;
&lt;li&gt;&lt;strong&gt;SessionMode&lt;/strong&gt; - This is to specify whether the contract requires a binding that supports sessions.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;OperationContractAttribute &lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Name&lt;/strong&gt;:&amp;nbsp;The name of&amp;nbsp;an operation&amp;nbsp;is part of a service contract. Default is the method name.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Action&lt;/strong&gt;:&lt;strong&gt;&amp;nbsp;&lt;/strong&gt;The send message dispatches to the method&amp;nbsp;for the operation based on action.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;ReplyAction&lt;/strong&gt;: To specify the reply message&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;IsOneWay&lt;/strong&gt;: Specifies whether the operation is one directional that an does not return a reply message. This is commonly used for notification service.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;ProtectionLevel&lt;/strong&gt; &lt;/li&gt;
&lt;li&gt;&lt;strong&gt;IsInitiating&lt;/strong&gt;: Specifies if the operation is the intial operation&amp;nbsp;in a session.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;IsTerminating&lt;/strong&gt;: Specifies if the session will be terminated after the&amp;nbsp;operation&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;AsyncPattern&lt;/strong&gt;: To asynchronously using a Begin/End method pair&lt;/li&gt;
&lt;/ul&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1703522" width="1" height="1"&gt;</content><author><name>abu</name><uri>http://msmvps.com/members/abu/default.aspx</uri></author><category term="WCF" scheme="http://msmvps.com/blogs/abu/archive/tags/WCF/default.aspx" /><category term=".NET" scheme="http://msmvps.com/blogs/abu/archive/tags/.NET/default.aspx" /><category term=".NET 3.0" scheme="http://msmvps.com/blogs/abu/archive/tags/.NET+3.0/default.aspx" /></entry><entry><title>RESTful WCF Service</title><link rel="alternate" type="text/html" href="/blogs/abu/archive/2009/07/08/restful-wcf-service.aspx" /><id>/blogs/abu/archive/2009/07/08/restful-wcf-service.aspx</id><published>2009-07-08T18:10:00Z</published><updated>2009-07-08T18:10:00Z</updated><content type="html">&lt;p&gt;RESTful WCF Services works by identifing the Resources &amp;amp; Action from Uniform Resource Identifiers (URIs).&lt;/p&gt;
&lt;p&gt;A RESTful web service is called by a unique URI to refer a resource and HTTP verb is to define actions to the resource.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;HTTP Method - Verb&lt;br /&gt;&lt;/strong&gt;GET &amp;ndash; Fetch &lt;br /&gt;PUT &amp;ndash; Update/Insert &lt;br /&gt;DELETE &amp;ndash; Delete &lt;br /&gt;POST &amp;ndash; Append &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;webHttpBinding&lt;/strong&gt; is a new WCF binding in Fx 3.5 to develop RESTful services. This does not use SOAP envelopes HTTP and HTTPS Transports. It supports XML, JSON and Binary (streams).&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;WebServiceHost&lt;/strong&gt; is a specialized SerivceHost which automatically configures address, binding, contract. &lt;br /&gt;If no endpoint is defined, WebServiceHost automatically creates a default endpoint. WebServiceHost adds WebHttpBehavior and disables the HTTP Help page and the Web Services Description Language (WSDL) GET functionality.&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;[&lt;strong&gt;WebGet&lt;/strong&gt;] And [&lt;strong&gt;WebInvoke&lt;/strong&gt;] attribute&lt;br /&gt;Binds a WCF operation to URI space and HTTP method Indicate the HTTP Method for the operation &lt;/p&gt;
&lt;p&gt;WebGet &amp;ndash; No method is require&lt;/p&gt;
&lt;p&gt;WebInvoke &amp;ndash; All verbs other than GET (Method parameter takes in the name of the Verb) &lt;/p&gt;
&lt;p&gt;Other&amp;nbsp;attributes can mentioed&lt;br /&gt;BodyStyle &amp;ndash; Indicates whether the Request/ Response are wrapped or not &lt;br /&gt;RequestFormat &amp;ndash; Json or Xml &lt;br /&gt;ResponseFormat &amp;ndash; Json or Xml &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;UriTemplate&lt;/strong&gt; &amp;ndash; Rich binding to URI UriTemplate String that allows define the structure/pattern of the URI&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1698782" width="1" height="1"&gt;</content><author><name>abu</name><uri>http://msmvps.com/members/abu/default.aspx</uri></author><category term=".NET 3.5" scheme="http://msmvps.com/blogs/abu/archive/tags/.NET+3.5/default.aspx" /><category term="REST" scheme="http://msmvps.com/blogs/abu/archive/tags/REST/default.aspx" /><category term="WCF" scheme="http://msmvps.com/blogs/abu/archive/tags/WCF/default.aspx" /></entry><entry><title>"M" is "Oslo" Modeling Language Language &gt; Tools - Query Analyzer or SQL Server Management Sudio for SQL and “Intellipad” for "M"</title><link rel="alternate" type="text/html" href="/blogs/abu/archive/2009/01/17/language-quot-m-quot-gt-sql-tool-query-analyzer-or-sql-server-management-sudio-gt-intellipad-of-quot-oslo-quot-for-data-management.aspx" /><id>/blogs/abu/archive/2009/01/17/language-quot-m-quot-gt-sql-tool-query-analyzer-or-sql-server-management-sudio-gt-intellipad-of-quot-oslo-quot-for-data-management.aspx</id><published>2009-01-17T13:12:00Z</published><updated>2009-01-17T13:12:00Z</updated><content type="html">&lt;p&gt;
&lt;div&gt;&lt;span style="font-size:small;font-family:verdana;"&gt;
&lt;p&gt;The evolution of programming languages have&amp;nbsp;been&amp;nbsp;categorized as 1GL, 2GL, 3GL, 4GL....E.g. Machine Language -&amp;gt; Assembly Language -&amp;gt; C / Fortran -&amp;gt; SQL / Focus 4GL. The evolution of these languages are towards Low level language to High Level language.&lt;/p&gt;
&lt;p&gt;In 1995, I stated learning computer languages. First I learned C, just after going through Fundamentals of Computer. In my first Academic project&amp;nbsp;using C, I spent lots of time only for writing thousands lines of code. During this period I have gone through System Analysis and Design - where I learned about how to translate / transform&amp;nbsp;the business application into computer systems [application]. Then I learned C++ and OOP, it was too nice experience, where I could compare the whole thing to real life cases. But it was amazing when I came to know SQL - real 4GL...&amp;nbsp;Writing SQL Statement is&amp;nbsp;&amp;nbsp;about &amp;quot;WHAT&amp;quot; not &amp;quot;HOW&amp;quot; [With few exceptions - Query Hints etc.]. Using SQL&amp;nbsp;generally few lines&amp;nbsp;code&amp;nbsp;computes the&amp;nbsp;values from a set of collections as the resultset/output. Then I started my career with one of the biggest giant - Petroleum Company in India using Sybase and Power Builder. Here I got opportunity to work with all my favourite technologies. &lt;/p&gt;
&lt;p&gt;About the future&amp;nbsp;or coming technologies, termed as NEXT GEN Application,&amp;nbsp;I expressed very early in one of my post published on September 15,&amp;nbsp; 2005 &lt;a href="http://msmvps.com/blogs/abu/archive/2005/09/15/real-challenge-to-the-architect-for-architecting-and-designing-for-future-application-development-s-method.aspx"&gt;Real Challenge to the architect for architecting and designing for FUTURE application development&amp;rsquo;s method.&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;That time I was thinking that&amp;nbsp;DSL, ORM, Modeling language were dream and will be goals for the language developer.&lt;/p&gt;
&lt;p&gt;Now Microsoft comes up to this with a fantastic way!!!&lt;/p&gt;
&lt;p&gt;In last version - .NET Framework 3.5, we got LINQ, LINQ to SQL, LINQ to XML, LING to Object.... Here we focused more on the Entities, Visual Studio writes the&amp;nbsp;code for data manipulation using SQL/XPath all underlying technologies... we stopped thinking about implementation to map&amp;nbsp;the data source to object classes for .NET to some extents. Here we got LINQ to SQL, LINQ to XML and so on so...&lt;/p&gt;
&lt;p&gt;This is not the &amp;quot;Full Stop&amp;quot; (&amp;quot;.&amp;quot;). Along with more advancement, Microsoft came up with &amp;quot;M&amp;quot;. It is &amp;quot;Oslo&amp;quot; Modeling Language which is a declarative language for working with data in more readable way for Structuring the the data as well as for querying too. It&amp;#39;s not about how data is stored or accessed, even not by implementation of specific technology.&lt;/p&gt;
&lt;p&gt;M builds on three basic concepts: values, types, and extents.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;A value is the data which follows the rule&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;A type describes a set of values.&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;An extent provides dynamic storage for values. &lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;span style="font-size:small;font-family:verdana;"&gt;
&lt;p&gt;M has been designed to map the relational model too. Using &amp;ldquo;Intellipad&amp;rdquo; tool of &amp;ldquo;Oslo&amp;rdquo;, model the data and the corresponding T-SQL statements generated by the compiler. Here &amp;ldquo;M&amp;rdquo;-&amp;gt;SQL translates &amp;ldquo;M&amp;rdquo; &amp;quot;modules&amp;quot; to SQL &amp;quot;schemas.&amp;quot;&lt;/p&gt;
&lt;/span&gt;&lt;/span&gt;
&lt;p&gt;More on.. &lt;/p&gt;
&lt;/div&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a target="_blank" href="http://msdn.microsoft.com/en-us/library/dd285271.aspx"&gt;http://msdn.microsoft.com/en-us/library/dd285271.aspx&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a target="_blank" href="http://msdn.microsoft.com/en-us/library/dd159725.aspx"&gt;http://msdn.microsoft.com/en-us/library/dd159725.aspx&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1663117" width="1" height="1"&gt;</content><author><name>abu</name><uri>http://msmvps.com/members/abu/default.aspx</uri></author><category term=".NET" scheme="http://msmvps.com/blogs/abu/archive/tags/.NET/default.aspx" /><category term="OSLO" scheme="http://msmvps.com/blogs/abu/archive/tags/OSLO/default.aspx" /><category term="Architecture" scheme="http://msmvps.com/blogs/abu/archive/tags/Architecture/default.aspx" /></entry><entry><title>Oslo - Microsoft Official Site</title><link rel="alternate" type="text/html" href="/blogs/abu/archive/2009/01/14/oslo-microsoft-official-site.aspx" /><id>/blogs/abu/archive/2009/01/14/oslo-microsoft-official-site.aspx</id><published>2009-01-14T07:22:00Z</published><updated>2009-01-14T07:22:00Z</updated><content type="html">&lt;p&gt;Microsoft&amp;rsquo;s forthcoming modeling platform is OSLO. More on &lt;a href="http://www.microsoft.com/soa/products/oslo.aspx"&gt;http://www.microsoft.com/soa/products/oslo.aspx&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&amp;quot;Oslo&amp;quot; realted Downloads are available here &lt;a href="http://msdn.microsoft.com/en-us/oslo/cc748654.aspx"&gt;http://msdn.microsoft.com/en-us/oslo/cc748654.aspx&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&amp;quot;Oslo&amp;quot; SDK download - &lt;a href="http://download.microsoft.com/download/4/2/3/423FFDF3-B0B9-4EF0-990F-82DDE530B672/OsloSDKOct2008CTP.msi"&gt;&lt;span style="color:#0000ff;"&gt;Download the &amp;quot;Oslo&amp;quot; SDK October 2008 CTP&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1661574" width="1" height="1"&gt;</content><author><name>abu</name><uri>http://msmvps.com/members/abu/default.aspx</uri></author><category term="OSLO" scheme="http://msmvps.com/blogs/abu/archive/tags/OSLO/default.aspx" /></entry><entry><title>WCF Tutorial &amp; Hands On Lab (HOL) - Tutorial/Lab # 01 (b) - Client Applications for IIS Hosted Service</title><link rel="alternate" type="text/html" href="/blogs/abu/archive/2009/01/11/wcf-tutorial-amp-hands-on-lab-hol-tutorial-lab-01-b-client-applications-for-iis-hosted-service.aspx" /><id>/blogs/abu/archive/2009/01/11/wcf-tutorial-amp-hands-on-lab-hol-tutorial-lab-01-b-client-applications-for-iis-hosted-service.aspx</id><published>2009-01-11T17:10:00Z</published><updated>2009-01-11T17:10:00Z</updated><content type="html">&lt;p&gt;&lt;span style="font-size:small;font-family:Times New Roman;"&gt;&lt;img src="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/abu/ClientForIISHostedWCF_2D00_1_2800_b_2900_.JPG" alt="" /&gt; &lt;img src="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/abu/WebClientForIISHostedWCF_2D00_1_2800_b_2900_.JPG" alt="" /&gt; &lt;a href="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/abu/MyFirstServiceClient.zip"&gt;Download - The Service and Client Application&lt;/a&gt; &lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1660822" width="1" height="1"&gt;</content><author><name>abu</name><uri>http://msmvps.com/members/abu/default.aspx</uri></author><category term="WCF" scheme="http://msmvps.com/blogs/abu/archive/tags/WCF/default.aspx" /></entry><entry><title>Tutorial Windows Communication Foundation (WCF) - Basics of WCF - Contracts</title><link rel="alternate" type="text/html" href="/blogs/abu/archive/2009/01/11/tutorial-windows-communication-foundation-wcf-basics-of-wcf-contracts.aspx" /><id>/blogs/abu/archive/2009/01/11/tutorial-windows-communication-foundation-wcf-basics-of-wcf-contracts.aspx</id><published>2009-01-11T04:40:00Z</published><updated>2009-01-11T04:40:00Z</updated><content type="html">&lt;p&gt;Windows Communication Foundation (WCF) application is divided two layers namely Services and Clients&lt;/p&gt;
&lt;p&gt;The WCF&amp;nbsp;services can be exposed in different ways through Web, Windows Service, Self Hosting [Running Console Application]. The Endpoint [Which is having the Address, Binding, Contract(ABC)] is definded to expose service or consume it.&lt;/p&gt;
&lt;p&gt;In our sample code so far we have developed Console Based application for both Service and Client Applications;&amp;nbsp;then we have deployed the serive in IIS 6.0 in Windows Server 2003 in the first set of applications. The&amp;nbsp;next set of applications are Web Applications.&lt;/p&gt;
&lt;p&gt;For developing a WCF Service we have gone through steps&lt;br /&gt;&lt;strong&gt;A. Sevice Layer&lt;br /&gt;&lt;/strong&gt;Step I - Designing Contracts&lt;br /&gt;Step II - Service Hosting and Selecting Bindings&lt;br /&gt;Step III - Configuring for Hosting the Service&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;B. Client Application&lt;br /&gt;&lt;/strong&gt;Step IV - Based on Sevice creating Proxy for invoking the Service&lt;/p&gt;
&lt;p&gt;Now we will discuss futher in details.&lt;/p&gt;
&lt;p&gt;We have looked that in both application, we have the one common thing, that is Endpoint includes the Service Contact, Address and Binding; only service hosting and client applications are different. The service contact is first item to be designed fo a Service.&lt;/p&gt;
&lt;p&gt;A service contract is all about:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Grouping of operations&lt;/li&gt;
&lt;li&gt;Signature of the operations for exchanging Mesages&lt;/li&gt;
&lt;li&gt;Data types of these messages.&lt;/li&gt;
&lt;li&gt;Protocols and serialization formats for communicating the messages&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The contact is a set of specific messages organized into basic message exchange patterns (MEPs), such as request/reply, one-way, and duplex&lt;/p&gt;
&lt;p&gt;One Way - Datagram-style delivery&lt;br /&gt;Request-Reply - Immediate Reply on same logical thread&lt;br /&gt;Duplex - Reply later and on backchannel (callback-style)&lt;/p&gt;
&lt;p&gt;Three Types of Contracts&lt;br /&gt;&lt;strong&gt;Service Contract - &lt;/strong&gt;Operations, Behaviors and Communication Shape&lt;br /&gt;&lt;strong&gt;Data Contract - &lt;/strong&gt;Defines Schema and Versioning Strategies&lt;br /&gt;&lt;strong&gt;Message Contract - &lt;/strong&gt;Allows defining application-specific headers and unwrapped body content&lt;/p&gt;
&lt;p&gt;All the contracts are defined on .NET application as CLR types and and on the wire it represents as XML format - WSDL/XSD/SOAP. This is implemented through Attributes. Here the details for all the types&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Service&lt;/strong&gt;&lt;br /&gt;The Service and operations defines in a service through ServiceContract and OperationContract attrubutes.&lt;br /&gt;Mapping: CLR types -&amp;gt; Web Services Description Language (WSDL)&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Data&lt;br /&gt;&lt;/strong&gt;Describes a data structure using DataContract and DataMember attributes.&lt;br /&gt;Mapping: CLR types -&amp;gt; XML Schema Definition (XSD)&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Message&lt;br /&gt;&lt;/strong&gt;Defines the structure of the message on the wire using MessageContract, MessageHeader, MessageBody&lt;br /&gt;Mapping: CLR types -&amp;gt; Simple Object Access Protocol (SOAP) messages.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Fault/Exception &lt;br /&gt;&lt;/strong&gt;For any CLR exceptions defined as fault contract using FaultContract attribute and the fault&amp;#39;s CLR Type converts to SOAP faults.&lt;br /&gt;Mapping: CLR types -&amp;gt; SOAP faults&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1660818" width="1" height="1"&gt;</content><author><name>abu</name><uri>http://msmvps.com/members/abu/default.aspx</uri></author><category term="WCF" scheme="http://msmvps.com/blogs/abu/archive/tags/WCF/default.aspx" /></entry><entry><title>WCF Tutorial &amp; Hands On Lab (HOL) - Tutorial/Lab # 01 (b) - Hosting with IIS</title><link rel="alternate" type="text/html" href="/blogs/abu/archive/2009/01/09/wcf-tutorial-amp-hands-on-lab-hol-tutorial-lab-01-b-hosting-with-iis.aspx" /><id>/blogs/abu/archive/2009/01/09/wcf-tutorial-amp-hands-on-lab-hol-tutorial-lab-01-b-hosting-with-iis.aspx</id><published>2009-01-09T10:46:00Z</published><updated>2009-01-09T10:46:00Z</updated><content type="html">&lt;p&gt;Now after creating &amp;quot;Hello World&amp;quot; most easy Service we will very happy to see by getting access throug a browser to access WSDL file and can be used in any other application by adding Service Reference.&amp;nbsp;&lt;br /&gt;Yes, we can access it just like to .asmx web service through .svc file. To host one service using IIS 6.0 - Windows Server 2003, we have to map .svc file&amp;nbsp;ISAPI extention. &lt;img width="752" src="http://msmvps.com/cfs-filesystemfile.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/abu/MyWcfServiceIISHost.jpg" alt="WCF Service Hosting with IIS" height="720" style="float:right;" /&gt;&amp;nbsp;&lt;a href="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/abu/MyWcfServiceIISHost.zip"&gt;Here is the the .SVC, Web.config files to download&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1659992" width="1" height="1"&gt;</content><author><name>abu</name><uri>http://msmvps.com/members/abu/default.aspx</uri></author><category term="WCF" scheme="http://msmvps.com/blogs/abu/archive/tags/WCF/default.aspx" /></entry><entry><title>SOA in the Real World</title><link rel="alternate" type="text/html" href="/blogs/abu/archive/2009/01/08/soa-in-the-real-world.aspx" /><id>/blogs/abu/archive/2009/01/08/soa-in-the-real-world.aspx</id><published>2009-01-08T06:16:00Z</published><updated>2009-01-08T06:16:00Z</updated><content type="html">&lt;p&gt;This is one of my most interesting eBook which gives the real concepts of SOA. I am here to share this... Click on the book&amp;#39;s image to download&lt;/p&gt;
&lt;p&gt;&lt;a target="_blank" href="http://www.microsoft.com/downloads/details.aspx?familyid=CB2A8E49-BB3B-49B6-B296-A2DFBBE042D8&amp;amp;displaylang=en" title="SOA in the Real World"&gt;&lt;img width="225" src="http://msmvps.com/cfs-filesystemfile.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/abu/SOA_2D00_in_2D00_the_2D00_Real_2D00_World.JPG" alt="SOA in The Real World" height="296" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1659397" width="1" height="1"&gt;</content><author><name>abu</name><uri>http://msmvps.com/members/abu/default.aspx</uri></author><category term="Architecture" scheme="http://msmvps.com/blogs/abu/archive/tags/Architecture/default.aspx" /></entry><entry><title>A2Z WCF Hands On Lab (HOL) - Tutorial/Lab # 01 (a) - Metadata Exchange - WSDL</title><link rel="alternate" type="text/html" href="/blogs/abu/archive/2009/01/05/a2z-wcf-hands-on-lab-hol-tutorial-lab-01-a-metadata-exchange-wsdl.aspx" /><id>/blogs/abu/archive/2009/01/05/a2z-wcf-hands-on-lab-hol-tutorial-lab-01-a-metadata-exchange-wsdl.aspx</id><published>2009-01-05T11:45:00Z</published><updated>2009-01-05T11:45:00Z</updated><content type="html">&lt;p&gt;The metadata is to describe how to interact with the service&amp;#39;s endpoints. We could generate Proxy class for the Client as well as it updates the .config files[App.config/Web.config] for the Client Application.&lt;br /&gt;For example Svcutil.exe could automatically generated client code for accessing the service..&lt;br /&gt;Trough Visual Studio 2008/2005 with WCF extension, we can &amp;quot;Add Service Reference&amp;quot; which does the entire necessary task for us.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;For is purpose it is the following code added to the Service Code.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:xx-small;color:#0000ff;"&gt;using&lt;/span&gt;&lt;span style="font-size:xx-small;"&gt; System.ServiceModel.Description;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:xx-small;"&gt;ServiceMetadataBehavior svcMetaBehav = new ServiceMetadataBehavior();&lt;br /&gt;svcMetaBehav.HttpGetEnabled = true;&lt;br /&gt;svcHost.Description.Behaviors.Add(svcMetaBehav);&lt;span style="font-size:xx-small;"&gt; &lt;font size="1" style="font-size:xx-small;"&gt;&lt;font size="1"&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font size="1" style="font-size:xx-small;"&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/font&gt;&lt;/span&gt;
&lt;p&gt;The WSDL of this service&amp;nbsp;looks like as following:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&lt;/p&gt;
&lt;/p&gt;
&lt;p&gt;&lt;img width="624" src="http://kolkatanet.com/KolkataNETWCF/ClientOfMyFirstWCFService_Files/image014.jpg" alt="WSDL of WCF Service" height="468" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img width="624" src="http://kolkatanet.com/KolkataNETWCF/ClientOfMyFirstWCFService_Files/image016.jpg" alt="WSDL - WCF" height="468" /&gt;&lt;/p&gt;
&lt;div style="MARGIN-LEFT:1em;TEXT-INDENT:-2em;" class="c"&gt;&lt;span class="m"&gt;&lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#990000;"&gt;&lt;span class="t"&gt;wsdl:binding&lt;/span&gt;&lt;span class="t"&gt; name&lt;/span&gt;&lt;/span&gt;&lt;span class="m"&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;BasicHttpBinding_IMyFirstService&lt;/b&gt;&lt;span class="m"&gt;&lt;span style="color:#0000ff;"&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;&lt;span class="t"&gt;&lt;span style="color:#990000;"&gt; type&lt;/span&gt;&lt;/span&gt;&lt;span class="m"&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;i0:IMyFirstService&lt;/b&gt;&lt;span style="color:#0000ff;"&gt;&lt;span class="m"&gt;&amp;quot;&lt;/span&gt;&lt;span class="m"&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="DISPLAY:block;"&gt;
&lt;div class="e"&gt;
&lt;div style="MARGIN-LEFT:1em;TEXT-INDENT:-2em;"&gt;&lt;span class="b"&gt;&lt;strong&gt;&lt;span style="color:#ff0000;font-family:Courier New;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt; &lt;span class="m"&gt;&lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;/span&gt;&lt;span class="t"&gt;&lt;span style="color:#990000;"&gt;soap:binding&lt;/span&gt;&lt;/span&gt; &lt;span class="t"&gt;&lt;span style="color:#990000;"&gt;transport&lt;/span&gt;&lt;/span&gt;&lt;span class="m"&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;http://schemas.xmlsoap.org/soap/http&lt;/b&gt;&lt;span style="color:#0000ff;"&gt;&lt;span class="m"&gt;&amp;quot;&lt;/span&gt;&lt;span class="m"&gt; /&amp;gt;&lt;/span&gt;&lt;/span&gt; &lt;/div&gt;
&lt;/div&gt;
&lt;div class="e"&gt;
&lt;div style="MARGIN-LEFT:1em;TEXT-INDENT:-2em;" class="c"&gt;&lt;span class="m"&gt;&lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#990000;"&gt;&lt;span class="t"&gt;wsdl:operation&lt;/span&gt;&lt;span class="t"&gt; name&lt;/span&gt;&lt;/span&gt;&lt;span class="m"&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;MyFirstMethod&lt;/b&gt;&lt;span style="color:#0000ff;"&gt;&lt;span class="m"&gt;&amp;quot;&lt;/span&gt;&lt;span class="m"&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div class="e"&gt;
&lt;div style="MARGIN-LEFT:1em;TEXT-INDENT:-2em;"&gt;&lt;span class="b"&gt;&lt;strong&gt;&lt;span style="color:#ff0000;font-family:Courier New;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt; &lt;span class="m"&gt;&lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;/span&gt;&lt;span class="t"&gt;&lt;span style="color:#990000;"&gt;soap:operation&lt;/span&gt;&lt;/span&gt; &lt;span class="t"&gt;&lt;span style="color:#990000;"&gt;soapAction&lt;/span&gt;&lt;/span&gt;&lt;span class="m"&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;http://KolkataNET.WCF.HOL/IMyFirstService/MyFirstMethod&lt;/b&gt;&lt;span class="m"&gt;&lt;span style="color:#0000ff;"&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;&lt;span class="t"&gt;&lt;span style="color:#990000;"&gt; style&lt;/span&gt;&lt;/span&gt;&lt;span class="m"&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;document&lt;/b&gt;&lt;span style="color:#0000ff;"&gt;&lt;span class="m"&gt;&amp;quot;&lt;/span&gt;&lt;span class="m"&gt; /&amp;gt;&lt;/span&gt;&lt;/span&gt; &lt;/div&gt;
&lt;/div&gt;
&lt;div class="e"&gt;
&lt;div style="MARGIN-LEFT:1em;TEXT-INDENT:-2em;" class="c"&gt;&amp;nbsp;&lt;span class="m"&gt;&lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;/span&gt;&lt;span class="t"&gt;&lt;span style="color:#990000;"&gt;wsdl:input&lt;/span&gt;&lt;/span&gt;&lt;span class="m"&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div class="e"&gt;
&lt;div style="MARGIN-LEFT:1em;TEXT-INDENT:-2em;"&gt;&lt;span class="b"&gt;&lt;strong&gt;&lt;span style="color:#ff0000;font-family:Courier New;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt; &lt;span class="m"&gt;&lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;/span&gt;&lt;span class="t"&gt;&lt;span style="color:#990000;"&gt;soap:body&lt;/span&gt;&lt;/span&gt; &lt;span class="t"&gt;&lt;span style="color:#990000;"&gt;use&lt;/span&gt;&lt;/span&gt;&lt;span class="m"&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;literal&lt;/b&gt;&lt;span style="color:#0000ff;"&gt;&lt;span class="m"&gt;&amp;quot;&lt;/span&gt;&lt;span class="m"&gt; /&amp;gt;&lt;/span&gt;&lt;/span&gt; &lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;&lt;span class="b"&gt;&lt;strong&gt;&lt;span style="color:#ff0000;font-family:Courier New;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt; &lt;span class="m"&gt;&lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;/span&gt;&lt;span class="t"&gt;&lt;span style="color:#990000;"&gt;wsdl:input&lt;/span&gt;&lt;/span&gt;&lt;span class="m"&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="e"&gt;
&lt;div style="MARGIN-LEFT:1em;TEXT-INDENT:-2em;" class="c"&gt;&lt;span class="m"&gt;&lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;/span&gt;&lt;span class="t"&gt;&lt;span style="color:#990000;"&gt;wsdl:output&lt;/span&gt;&lt;/span&gt;&lt;span class="m"&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div class="e"&gt;
&lt;div style="MARGIN-LEFT:1em;TEXT-INDENT:-2em;"&gt;&lt;span class="b"&gt;&lt;strong&gt;&lt;span style="color:#ff0000;font-family:Courier New;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt; &lt;span class="m"&gt;&lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;/span&gt;&lt;span class="t"&gt;&lt;span style="color:#990000;"&gt;soap:body&lt;/span&gt;&lt;/span&gt; &lt;span class="t"&gt;&lt;span style="color:#990000;"&gt;use&lt;/span&gt;&lt;/span&gt;&lt;span class="m"&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;literal&lt;/b&gt;&lt;span style="color:#0000ff;"&gt;&lt;span class="m"&gt;&amp;quot;&lt;/span&gt;&lt;span class="m"&gt; /&amp;gt;&lt;/span&gt;&lt;/span&gt; &lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;&lt;span class="b"&gt;&lt;strong&gt;&lt;span style="color:#ff0000;font-family:Courier New;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt; &lt;span class="m"&gt;&lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;/span&gt;&lt;span class="t"&gt;&lt;span style="color:#990000;"&gt;wsdl:output&lt;/span&gt;&lt;/span&gt;&lt;span class="m"&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;&lt;span class="b"&gt;&lt;strong&gt;&lt;span style="color:#ff0000;font-family:Courier New;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt; &lt;span class="m"&gt;&lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;/span&gt;&lt;span class="t"&gt;&lt;span style="color:#990000;"&gt;wsdl:operation&lt;/span&gt;&lt;/span&gt;&lt;span class="m"&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;&lt;span class="b"&gt;&lt;strong&gt;&lt;span style="color:#ff0000;font-family:Courier New;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt; &lt;span class="m"&gt;&lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;/span&gt;&lt;span class="t"&gt;&lt;span style="color:#990000;"&gt;wsdl:binding&lt;/span&gt;&lt;/span&gt;&lt;span class="m"&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span class="m"&gt;&lt;/span&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;&lt;span class="m"&gt;&lt;/span&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;&lt;span class="m"&gt;
&lt;div style="MARGIN-LEFT:1em;TEXT-INDENT:-2em;" class="c"&gt;&amp;nbsp;&lt;span class="m"&gt;&lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#990000;"&gt;&lt;span class="t"&gt;wsdl:service&lt;/span&gt;&lt;span class="t"&gt; name&lt;/span&gt;&lt;/span&gt;&lt;span class="m"&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;MyFirstService&lt;/b&gt;&lt;span style="color:#0000ff;"&gt;&lt;span class="m"&gt;&amp;quot;&lt;/span&gt;&lt;span class="m"&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="DISPLAY:block;"&gt;
&lt;div class="e"&gt;
&lt;div style="MARGIN-LEFT:1em;TEXT-INDENT:-2em;" class="c"&gt;&amp;nbsp;&lt;span class="m"&gt;&lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#990000;"&gt;&lt;span class="t"&gt;wsdl:port&lt;/span&gt;&lt;span class="t"&gt; name&lt;/span&gt;&lt;/span&gt;&lt;span class="m"&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;BasicHttpBinding_IMyFirstService&lt;/b&gt;&lt;span class="m"&gt;&lt;span style="color:#0000ff;"&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;&lt;span class="t"&gt;&lt;span style="color:#990000;"&gt; binding&lt;/span&gt;&lt;/span&gt;&lt;span class="m"&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;tns:BasicHttpBinding_IMyFirstService&lt;/b&gt;&lt;span style="color:#0000ff;"&gt;&lt;span class="m"&gt;&amp;quot;&lt;/span&gt;&lt;span class="m"&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div class="e"&gt;
&lt;div style="MARGIN-LEFT:1em;TEXT-INDENT:-2em;"&gt;&lt;span class="b"&gt;&lt;strong&gt;&lt;span style="color:#ff0000;font-family:Courier New;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt; &lt;span class="m"&gt;&lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;/span&gt;&lt;span class="t"&gt;&lt;span style="color:#990000;"&gt;soap:address&lt;/span&gt;&lt;/span&gt; &lt;span class="t"&gt;&lt;span style="color:#990000;"&gt;location&lt;/span&gt;&lt;/span&gt;&lt;span class="m"&gt;&lt;span style="color:#0000ff;"&gt;=&amp;quot;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;http://abu:8080/WCFKolkataNET/HOL/MyService&lt;/b&gt;&lt;span style="color:#0000ff;"&gt;&lt;span class="m"&gt;&amp;quot;&lt;/span&gt;&lt;span class="m"&gt; /&amp;gt;&lt;/span&gt;&lt;/span&gt; &lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;&lt;span class="b"&gt;&lt;strong&gt;&lt;span style="color:#ff0000;font-family:Courier New;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt; &lt;span class="m"&gt;&lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;/span&gt;&lt;span class="t"&gt;&lt;span style="color:#990000;"&gt;wsdl:port&lt;/span&gt;&lt;/span&gt;&lt;span class="m"&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;&lt;span class="b"&gt;&lt;strong&gt;&lt;span style="color:#ff0000;font-family:Courier New;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt; &lt;span class="m"&gt;&lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;/span&gt;&lt;span class="t"&gt;&lt;span style="color:#990000;"&gt;wsdl:service&lt;/span&gt;&lt;/span&gt;&lt;span class="m"&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/span&gt;&amp;nbsp;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1658548" width="1" height="1"&gt;</content><author><name>abu</name><uri>http://msmvps.com/members/abu/default.aspx</uri></author></entry><entry><title>WCF A2Z Hands On Lab (HOL) - Tutorial/Lab # 01 (a) - Client Application</title><link rel="alternate" type="text/html" href="/blogs/abu/archive/2009/01/04/wcf-a2z-hands-on-lab-hol-tutotial-lab-01-a-client-application.aspx" /><link rel="enclosure" type="application/x-zip-compressed" length="62258" href="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Components.PostAttachments/00.01.65.84.63/MyWCFLearning.zip" /><id>/blogs/abu/archive/2009/01/04/wcf-a2z-hands-on-lab-hol-tutotial-lab-01-a-client-application.aspx</id><published>2009-01-04T12:04:00Z</published><updated>2009-01-04T12:04:00Z</updated><content type="html">&lt;h1&gt;Step 5. Create New Console Project for creating Client Application the Service - Start running the Service when you generate the Proxy of the Service&lt;/h1&gt;
&lt;p&gt;&amp;nbsp;&lt;img src="http://kolkatanet.com/KolkataNETWCF/ClientOfMyFirstWCFService_Files/image002.jpg" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;5.1- Added Service Reference of the created Service&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="http://kolkatanet.com/KolkataNETWCF/ClientOfMyFirstWCFService_Files/image004.jpg" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;5.2- Created Proxy Class of the created Service - In service explorer click on show all files then a set of files will be showing which are auto generated, the proxy class file is here Reference.cs&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;img src="http://kolkatanet.com/KolkataNETWCF/ClientOfMyFirstWCFService_Files/image006.jpg" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;b&gt;&lt;b&gt;5.3 This also generates the service binding details in App.config file&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&amp;nbsp;&lt;img src="http://kolkatanet.com/KolkataNETWCF/ClientOfMyFirstWCFService_Files/image008.jpg" alt="" /&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;
&lt;p&gt;&lt;b&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;b&gt;5.3 Auto generated Binding Details of the service in App.config file&lt;/b&gt;&lt;/p&gt;
&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;img src="http://kolkatanet.com/KolkataNETWCF/ClientOfMyFirstWCFService_Files/image010.jpg" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;bindings&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;basicHttpBinding&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;binding name=&amp;quot;BasicHttpBinding_IMyFirstService&amp;quot; closeTimeout=&amp;quot;00:01:00&amp;quot;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; openTimeout=&amp;quot;00:01:00&amp;quot; receiveTimeout=&amp;quot;00:10:00&amp;quot; sendTimeout=&amp;quot;00:01:00&amp;quot;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; allowCookies=&amp;quot;false&amp;quot; bypassProxyOnLocal=&amp;quot;false&amp;quot; hostNameComparisonMode=&amp;quot;StrongWildcard&amp;quot;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; maxBufferSize=&amp;quot;65536&amp;quot; maxBufferPoolSize=&amp;quot;524288&amp;quot; maxReceivedMessageSize=&amp;quot;65536&amp;quot;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; messageEncoding=&amp;quot;Text&amp;quot; textEncoding=&amp;quot;utf-8&amp;quot; transferMode=&amp;quot;Buffered&amp;quot;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; useDefaultWebProxy=&amp;quot;true&amp;quot;&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;readerQuotas maxDepth=&amp;quot;32&amp;quot; maxStringContentLength=&amp;quot;8192&amp;quot; maxArrayLength=&amp;quot;16384&amp;quot;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; maxBytesPerRead=&amp;quot;4096&amp;quot; maxNameTableCharCount=&amp;quot;16384&amp;quot; /&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;security mode=&amp;quot;None&amp;quot;&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;transport clientCredentialType=&amp;quot;None&amp;quot; proxyCredentialType=&amp;quot;None&amp;quot;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; realm=&amp;quot;&amp;quot; /&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;message clientCredentialType=&amp;quot;UserName&amp;quot; algorithmSuite=&amp;quot;Default&amp;quot; /&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/security&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/binding&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/basicHttpBinding&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/bindings&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;5.3 Auto generated End Point of the service in App.config file&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;client&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;endpoint address=&amp;quot;http://abu:8080/WCFKolkataNET/HOL/MyService&amp;quot; binding=&amp;quot;basicHttpBinding&amp;quot;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; bindingConfiguration=&amp;quot;BasicHttpBinding_IMyFirstService&amp;quot; contract=&amp;quot;MyFirstServiceClient.IMyFirstService&amp;quot;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; name=&amp;quot;BasicHttpBinding_IMyFirstService&amp;quot; /&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/client&amp;gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;5.4 Code in Prorgarm.cs&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;using System;&lt;/p&gt;
&lt;p&gt;using System.Collections.Generic;&lt;/p&gt;
&lt;p&gt;using System.Linq;&lt;/p&gt;
&lt;p&gt;using System.Text;&lt;/p&gt;
&lt;p&gt;using System.Runtime.Serialization;&lt;/p&gt;
&lt;p&gt;using System.ServiceModel;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;namespace KolkataNETWCFHelloWorld&lt;/p&gt;
&lt;p&gt;{&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; class Program&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; static void Main(string[] args)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; EndpointAddress endPointAddr = new EndpointAddress(&amp;quot;http://abu:8080/WCFKolkataNET/HOL/MyService&amp;quot;);&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MyFirstServiceClient clientProxy = new MyFirstServiceClient(new BasicHttpBinding(), endPointAddr);&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; string strResponse = clientProxy.MyFirstMethod();&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Console.WriteLine(string.Format(&amp;quot;Response from MyFirstService: {0}&amp;quot;, strResponse));&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Console.WriteLine();&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Console.ReadLine();&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;
&lt;p&gt;}&lt;/p&gt;
&lt;p&gt;&amp;nbsp;Run the Client Application&lt;/p&gt;
&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;img src="http://kolkatanet.com/KolkataNETWCF/ClientOfMyFirstWCFService_Files/image012.jpg" alt="" /&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1658463" width="1" height="1"&gt;</content><author><name>abu</name><uri>http://msmvps.com/members/abu/default.aspx</uri></author><category term="WCF" scheme="http://msmvps.com/blogs/abu/archive/tags/WCF/default.aspx" /></entry><entry><title>WCF A2Z Hands On Lab (HOL) - Tutorial/Lab # 01 (a) - Service</title><link rel="alternate" type="text/html" href="/blogs/abu/archive/2009/01/04/wcf-a2z-hands-on-lab-hol-tutotial-lab-01-a-service.aspx" /><id>/blogs/abu/archive/2009/01/04/wcf-a2z-hands-on-lab-hol-tutotial-lab-01-a-service.aspx</id><published>2009-01-04T05:41:00Z</published><updated>2009-01-04T05:41:00Z</updated><content type="html">&lt;h1&gt;Step 1. Created one Console Project&lt;/h1&gt;
&lt;h1&gt;&lt;/h1&gt;
&lt;h1&gt;&lt;img src="http://kolkatanet.com/KolkataNETWCF/WCF-HelloWorld_files/image002.jpg" alt="" /&gt;&lt;/h1&gt;
&lt;p&gt;&lt;img src="http://kolkatanet.com/KolkataNETWCF/WCF-HelloWorld_files/image004.jpg" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h1&gt;Step 2. Created one Project in the same Solution IMyFirstService.csproj for declaring/designing Service contact&lt;/h1&gt;
&lt;p&gt;&amp;nbsp;&lt;img src="http://kolkatanet.com/KolkataNETWCF/WCF-HelloWorld_files/image006.jpg" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;2.1- Added reference to System.ServiceModel&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;using System;&lt;/p&gt;
&lt;p&gt;using System.Runtime.Serialization;&lt;/p&gt;
&lt;p&gt;using System.ServiceModel;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;namespace KolkataNETWCFHelloWorld&lt;/p&gt;
&lt;p&gt;{&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; [ServiceContract(Namespace=&amp;quot;http://KolkataNET.WCF.HOL&amp;quot;)]&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public interface IMyFirstService&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; [OperationContract]&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; string MyFirstMethod();&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;
&lt;p&gt;}&lt;/p&gt;
&lt;p&gt;&lt;b&gt;2.2 Design Simple Service Contract with one &lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; [ServiceContract(Namespace=&amp;quot;http://KolkataNET.WCF.HOL&amp;quot;)]&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public interface IMyFirstService&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;2.3 Design Simple Operation [Method/Function] using Attribute [&lt;/b&gt;OperationContract]&lt;b&gt; by declaring the method name &lt;/b&gt;MyFirstMethod&lt;b&gt; &lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;/b&gt;
&lt;p&gt;&lt;img src="http://kolkatanet.com/KolkataNETWCF/WCF-HelloWorld_files/image012.jpg" alt="" /&gt;&lt;/p&gt;
&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&amp;nbsp;&lt;/b&gt;&lt;/p&gt;
&lt;h1&gt;Step 3. Created one Project in the same Solution MyFirstService.csproj for declaring/designing Service&lt;/h1&gt;
&lt;p&gt;&amp;nbsp;&lt;img src="http://kolkatanet.com/KolkataNETWCF/WCF-HelloWorld_files/image008.jpg" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;3.1- Added reference to System.ServiceModel&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;using System;&lt;/p&gt;
&lt;p&gt;using System.Runtime.Serialization;&lt;/p&gt;
&lt;p&gt;using System.ServiceModel;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;namespace KolkataNETWCFHelloWorld&lt;/p&gt;
&lt;p&gt;{&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public class MyFirstService : IMyFirstService&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public string MyFirstMethod()&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return string.Format(&amp;quot;Hello World. Welcome KolkataNET!!!&amp;quot;);&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;
&lt;p&gt;}&lt;/p&gt;
&lt;p&gt;&lt;b&gt;3.2 Design Simple Service implementing the above service Contract&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public class MyFirstService : IMyFirstService&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&amp;nbsp;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;3.3 Design Simple Operation [Method/Function] &lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public class MyFirstService : IMyFirstService&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public string MyFirstMethod()&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return string.Format(&amp;quot;Hello World. Welcome KolkataNET!!!&amp;quot;);&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;
&lt;p&gt;&lt;b&gt;
&lt;p&gt;&lt;b&gt;&amp;nbsp;&lt;/b&gt;&lt;/p&gt;
&lt;h1&gt;Step 4. Modified the initial main Console Project to Self Host the Service&lt;/h1&gt;
&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;img src="http://kolkatanet.com/KolkataNETWCF/WCF-HelloWorld_files/image010.jpg" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;
&lt;p&gt;&lt;b&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;4.1- Added reference to System.ServiceModel - For hosting the service and exposing MEX - Metadata Exchange of the Service&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;using System;&lt;/p&gt;
&lt;p&gt;using System.Runtime.Serialization;&lt;/p&gt;
&lt;p&gt;using System.ServiceModel;&lt;/p&gt;
&lt;p&gt;using System.ServiceModel.Description;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;namespace KolkataNETWCFHelloWorld&lt;/p&gt;
&lt;p&gt;{&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; class Program&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; static void Main(string[] args)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Uri svcBaseAddress = new Uri(&amp;quot;http://abu:8080/WCFKolkataNET/HOL&amp;quot;);&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ServiceHost svcHost = new ServiceHost(typeof(MyFirstService), svcBaseAddress);&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; svcHost.AddServiceEndpoint(&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; typeof(IMyFirstService),&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; new BasicHttpBinding(),&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;quot;MyService&amp;quot;);&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ServiceMetadataBehavior svcMetaBehav = new ServiceMetadataBehavior();&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; svcMetaBehav.HttpGetEnabled = true;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; svcHost.Description.Behaviors.Add(svcMetaBehav);&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; svcHost.Open();&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Console.WriteLine(&amp;quot;&amp;lt;ENTER&amp;gt; to stop the service - MyFirstService&amp;quot;);&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Console.WriteLine();&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Console.ReadLine();&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; svcHost.Close();&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;
&lt;p&gt;}&lt;/p&gt;
&lt;p&gt;&lt;b&gt;4.2 Defining Base Address to host the Service&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Uri svcBaseAddress = new Uri(&amp;quot;http://abu:8080/WCFKolkataNET/HOL&amp;quot;);&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ServiceHost svcHost = new ServiceHost(typeof(MyFirstService), svcBaseAddress);&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; svcHost.AddServiceEndpoint(&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; typeof(IMyFirstService),&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; new BasicHttpBinding(),&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;quot;MyService&amp;quot;);&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&amp;nbsp;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;4.3 Allowing to expose MEX of the Service&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ServiceMetadataBehavior svcMetaBehav = new ServiceMetadataBehavior();&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; svcMetaBehav.HttpGetEnabled = true;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; svcHost.Description.Behaviors.Add(svcMetaBehav);&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&amp;nbsp;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;4.3 Running the service until &amp;lt;ENTER&amp;gt; key has been pressed&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;svcHost.Open();&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&amp;nbsp;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;4.4 Closing the service when &amp;lt;ENTER&amp;gt; key has been pressed&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;svcHost.Close();&lt;/p&gt;
&lt;b&gt;
&lt;p&gt;&lt;b&gt;&amp;nbsp;&lt;/b&gt;&lt;/p&gt;
&lt;h1&gt;Running the Service - now we will create client to call it&lt;/h1&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;img width="624" src="http://kolkatanet.com/KolkataNETWCF/WCF-HelloWorld_files/image012.jpg" height="468" alt="" /&gt;&lt;/b&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1658462" width="1" height="1"&gt;</content><author><name>abu</name><uri>http://msmvps.com/members/abu/default.aspx</uri></author><category term="WCF" scheme="http://msmvps.com/blogs/abu/archive/tags/WCF/default.aspx" /></entry><entry><title>Download Code - A2Z WCF Hands On Lab (HOL) - WCF Tutorial/Lab # 01- Service and Client Application </title><link rel="alternate" type="text/html" href="/blogs/abu/archive/2009/01/03/download-code-wcf-a2z-hands-on-lab-hol-tutorial-lab-01-service-and-client-application.aspx" /><id>/blogs/abu/archive/2009/01/03/download-code-wcf-a2z-hands-on-lab-hol-tutorial-lab-01-service-and-client-application.aspx</id><published>2009-01-03T06:23:00Z</published><updated>2009-01-03T06:23:00Z</updated><content type="html">&lt;p&gt;Here is the code...&lt;/p&gt;
&lt;p&gt;&lt;a href="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/abu/MyWCFLearning.zip" title="WCF A2Z Hands On Lab (HOL) - Tutorial/Lab # 01- Service and Client Application "&gt;Click to Download&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:7.5pt;color:#000000;font-family:&amp;#39;Verdana&amp;#39;,&amp;#39;sans-serif&amp;#39;;"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:x-small;font-family:Verdana;"&gt;&lt;span style="font-size:7.5pt;font-family:&amp;#39;Verdana&amp;#39;,&amp;#39;sans-serif&amp;#39;;"&gt;This is my first post for WCF HOL. I will be posting series of Lab Sessions with code and explanations for the whole series. I have noticed in one UG Session people who don&amp;#39;t have any WCF backround but who are familiars of ASP.NET/.NET for them this series will be useful as a tutorial with practical.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:x-small;font-family:Verdana;"&gt;&lt;span style="font-size:7.5pt;font-family:&amp;#39;Verdana&amp;#39;,&amp;#39;sans-serif&amp;#39;;"&gt;Step by step I will be covering all the possible aspects of WCF. Same time I will be covering the SOA / Service based real life application scope especially for Connected and Distributed systems.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:x-small;font-family:Verdana;"&gt;&lt;span style="font-size:7.5pt;font-family:&amp;#39;Verdana&amp;#39;,&amp;#39;sans-serif&amp;#39;;"&gt;Please note that in the sample application every where I have used abu - which is my machine name, now for your case this will be your machine name&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:x-small;font-family:Verdana;"&gt;&lt;span style="font-size:7.5pt;color:#000000;font-family:&amp;#39;Verdana&amp;#39;,&amp;#39;sans-serif&amp;#39;;"&gt;&lt;span style="font-size:small;color:#a31515;"&gt;&lt;span style="font-size:xx-small;color:#a31515;"&gt;&lt;span style="font-size:xx-small;color:#000000;"&gt;&lt;strong&gt;In Service Code&lt;/strong&gt;&lt;br /&gt;Uri&lt;/span&gt;&lt;span style="font-size:xx-small;"&gt; svcBaseAddress = &lt;/span&gt;&lt;span style="font-size:xx-small;color:#0000ff;"&gt;new&lt;/span&gt;&lt;span style="font-size:xx-small;"&gt; &lt;/span&gt;&lt;span style="font-size:xx-small;color:#2b91af;"&gt;Uri&lt;/span&gt;&lt;span style="font-size:xx-small;"&gt;(&lt;/span&gt;&lt;span style="font-size:xx-small;color:#a31515;"&gt;&lt;a href="http://abu:8080/WCFKolkataNET/HOL"&gt;http://&lt;strong&gt;abu&lt;/strong&gt;:8080/WCFKolkataNET/HOL&lt;/a&gt;&lt;/span&gt;&lt;span style="font-size:xx-small;"&gt;); // Change &amp;quot;abu&amp;quot; by your machine name&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:x-small;font-family:Verdana;"&gt;&lt;span style="font-size:7.5pt;color:#000000;font-family:&amp;#39;Verdana&amp;#39;,&amp;#39;sans-serif&amp;#39;;"&gt;&lt;span style="font-size:small;color:#a31515;"&gt;&lt;span style="font-size:xx-small;color:#a31515;"&gt;&lt;span style="font-size:xx-small;"&gt;&lt;span style="font-size:xx-small;color:#000000;"&gt;&lt;strong&gt;In Client Code&lt;/strong&gt;&lt;br /&gt;EndpointAddress&lt;/span&gt;&lt;span style="font-size:xx-small;"&gt; endPointAddr = &lt;/span&gt;&lt;span style="font-size:xx-small;color:#0000ff;"&gt;new&lt;/span&gt;&lt;span style="font-size:xx-small;"&gt; &lt;/span&gt;&lt;span style="font-size:xx-small;color:#2b91af;"&gt;EndpointAddress&lt;/span&gt;&lt;span style="font-size:xx-small;"&gt;(&lt;/span&gt;&lt;span style="font-size:xx-small;color:#a31515;"&gt;&lt;a href="http://abu:8080/WCFKolkataNET/HOL/MyService"&gt;http://abu:8080/WCFKolkataNET/HOL/MyService&lt;/a&gt;&lt;/span&gt;&lt;span style="font-size:xx-small;"&gt;); // Change &amp;quot;abu&amp;quot; by your machine name&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1658465" width="1" height="1"&gt;</content><author><name>abu</name><uri>http://msmvps.com/members/abu/default.aspx</uri></author><category term="WCF" scheme="http://msmvps.com/blogs/abu/archive/tags/WCF/default.aspx" /></entry><entry><title>ASP.NET AJAX Client Libraries Webcast from Rob Bagby</title><link rel="alternate" type="text/html" href="/blogs/abu/archive/2008/12/25/asp-net-ajax-client-libraries-webcast.aspx" /><id>/blogs/abu/archive/2008/12/25/asp-net-ajax-client-libraries-webcast.aspx</id><published>2008-12-25T04:57:00Z</published><updated>2008-12-25T04:57:00Z</updated><content type="html">&lt;p&gt;This series of Webcast includes A2Z[complete] ASP.NET AJAX Client Libraries - calling Web services, object-oriented development, creating controls, creating behaviors, and tips and tricks for development&lt;/p&gt;
&lt;p&gt;WCF Services from ASP.NET AJAX&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="https://www.livemeeting.com/cc/mseventsbmo/view?id=1032356264&amp;amp;role=attend&amp;amp;pw=9BD5AB3D"&gt;MSDN WEBCAST: CALLING WINDOWS COMMUNICATION FOUNDATION SERVICES WITH ASP.NET AJAX CLIENT LIBRARIES (PART 1 OF 2)&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://www.livemeeting.com/cc/mseventsbmo/view?id=1032356451&amp;amp;role=attend&amp;amp;pw=08241F0B"&gt;MSDN WEBCAST: CALLING WINDOWS COMMUNICATION FOUNDATION SERVICES WITH ASP.NET AJAX CLIENT LIBRARIES (PART 2 OF 2) (LEVEL 200)&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;ASP.NET AJAX Client Library&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032337907&amp;amp;Culture=en-US"&gt;MSDN Webcast: ASP.NET AJAX Client Libraries: Overview&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032337914&amp;amp;Culture=en-US"&gt;MSDN Webcast: ASP.NET AJAX Client Libraries: Calling Web Services&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032337930&amp;amp;Culture=en-US"&gt;MSDN Webcast: ASP.NET AJAX Client Libraries: Object-Oriented Development&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032337935&amp;amp;Culture=en-US"&gt;MSDN Webcast: ASP.NET AJAX Client Libraries: Creating Controls&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032337940&amp;amp;Culture=en-US"&gt;MSDN Webcast: ASP.NET AJAX Client Libraries: Creating Behaviors and Extenders&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032337951&amp;amp;Culture=en-US"&gt;MSDN Webcast: ASP.NET AJAX Client Libraries: Development Tips and Tricks&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032337956&amp;amp;Culture=en-US"&gt;MSDN Webcast: ASP.NET AJAX Client Libraries: Session Review&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032340881&amp;amp;Culture=en-US"&gt;MSDN Webcast: Events in the ASP.NET AJAX Client Libraries&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://msevents.microsoft.com/CUI/WebCastEventDetails.aspx?culture=en-US&amp;amp;EventID=1032340890&amp;amp;CountryCode=US"&gt;MSDN Webcast: Services in ASP.NET AJAX Client Libraries&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://msevents.microsoft.com/CUI/WebCastEventDetails.aspx?culture=en-US&amp;amp;EventID=1032340893&amp;amp;CountryCode=US"&gt;MSDN Webcast: Security in ASP.NET AJAX Client Applications&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1657725" width="1" height="1"&gt;</content><author><name>abu</name><uri>http://msmvps.com/members/abu/default.aspx</uri></author><category term="AJAX" scheme="http://msmvps.com/blogs/abu/archive/tags/AJAX/default.aspx" /><category term="WCF" scheme="http://msmvps.com/blogs/abu/archive/tags/WCF/default.aspx" /><category term="ASP.NET" scheme="http://msmvps.com/blogs/abu/archive/tags/ASP.NET/default.aspx" /></entry><entry><title>REST in WCF </title><link rel="alternate" type="text/html" href="/blogs/abu/archive/2008/12/23/rest-in-wcf.aspx" /><id>/blogs/abu/archive/2008/12/23/rest-in-wcf.aspx</id><published>2008-12-23T14:26:00Z</published><updated>2008-12-23T14:26:00Z</updated><content type="html">&lt;p&gt;The series blog post on REST in WCF
&lt;li&gt;&lt;a target="_blank" href="http://blogs.msdn.com/bags/archive/2008/05/28/rest-in-wcf-part-i-rest-overview.aspx"&gt;REST in WCF - Part I (REST Overview)&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://blogs.msdn.com/bags/archive/2008/05/29/rest-in-wcf-part-ii-ajax-friendly-services-creating-the-service.aspx"&gt;REST in WCF - Part II (AJAX Friendly Services, Creating The Service)&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://blogs.msdn.com/bags/archive/2008/05/30/rest-in-wcf-part-iii-ajax-friendly-services-consuming-the-service.aspx"&gt;REST in WCF - Part III (AJAX Friendly Services, Consuming The Service)&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://blogs.msdn.com/bags/archive/2008/06/09/rest-in-wcf-part-iv-hi-rest-exposing-a-service-via-get-configuring-the-service.aspx"&gt;REST in WCF - Part IV (HI-REST - Exposing a service via GET - Configuring the service)&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://blogs.msdn.com/bags/archive/2008/06/10/rest-in-wcf-part-v-hi-rest-exposing-a-service-via-get-the-servicecontract-and-implementation.aspx"&gt;REST in WCF - Part V (HI-REST - Exposing a service via GET - The ServiceContract and Implementation)&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://blogs.msdn.com/bags/archive/2008/06/12/rest-in-wcf-part-vi-hi-rest-consuming-our-get-service-via-ajax.aspx"&gt;REST in WCF - Part VI (HI-REST - Consuming our GET service via AJAX)&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://blogs.msdn.com/bags/archive/2008/06/12/rest-in-wcf-part-vii-hi-rest-implementing-insert-and-update.aspx"&gt;REST in WCF - Part VII (HI-REST - Implementing Insert and Update&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://blogs.msdn.com/bags/archive/2008/06/14/rest-in-wcf-part-viii-hi-rest-implementing-delete.aspx"&gt;REST in WCF - Part VIII (HI-REST - Implementing Delete)&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://blogs.msdn.com/bags/archive/2008/08/22/rest-in-wcf-part-ix-controlling-the-uri.aspx"&gt;REST in WCF - Part IX - Controlling the URI&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://blogs.msdn.com/bags/archive/2008/08/28/rest-in-wcf-part-x-supporting-caching-and-conditional-get.aspx"&gt;REST in WCF - Part X - Supporting Caching and Conditional GET&lt;/a&gt; &lt;/li&gt;
&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1657547" width="1" height="1"&gt;</content><author><name>abu</name><uri>http://msmvps.com/members/abu/default.aspx</uri></author><category term=".NET 3.5" scheme="http://msmvps.com/blogs/abu/archive/tags/.NET+3.5/default.aspx" /><category term="REST" scheme="http://msmvps.com/blogs/abu/archive/tags/REST/default.aspx" /><category term="AJAX" scheme="http://msmvps.com/blogs/abu/archive/tags/AJAX/default.aspx" /><category term="WCF" scheme="http://msmvps.com/blogs/abu/archive/tags/WCF/default.aspx" /></entry><entry><title>Url Rewriting using WCF</title><link rel="alternate" type="text/html" href="/blogs/abu/archive/2008/12/22/url-rewriting.aspx" /><id>/blogs/abu/archive/2008/12/22/url-rewriting.aspx</id><published>2008-12-22T21:26:00Z</published><updated>2008-12-22T21:26:00Z</updated><content type="html">&lt;p&gt;One of my interesting thing&amp;nbsp;is &amp;quot;URL Rewriting&amp;quot;. The first time I have implemented it through implementing HTTPHandler using .NET 1.1. Same concept I have applied to a Document Management Service [DMS] project to PUT the document and GET the document by an .ASMX&amp;nbsp;WebService. There I added verb * using wild charater&amp;nbsp;in IIS 6.0 as well as added&amp;nbsp; &amp;lt;httpHandler&amp;gt; node in web.config. Then we got in different way in .NET 2.0. Finally this time we got using URITemplate, WebGet, WebInvoke in WCF 3.5 SP1.&lt;/p&gt;
&lt;p&gt;The &lt;strong&gt;UriTemplate&lt;/strong&gt; class provides methods for working with sets of URIs that share a common structure for URL Rewriting.&lt;br /&gt;As this follows based on the URL pattern comprises left portion of URI which is fixed and rest is dynamic where certain parameter is getting manipulated or changed to request a page. System.UriTemplate provides runtime support for URI template syntax.&lt;br /&gt;UriTemplate is to manipulate parameters using ByName and ByPosition.&lt;br /&gt;[&lt;strong&gt;WebGet&lt;/strong&gt;] - supports HTTP GET method&lt;br /&gt;&lt;strong&gt;WebOperationContext&lt;/strong&gt; provides easy access to Web specifics (e.g., headers, status codes)&lt;br /&gt;[&lt;strong&gt;WebInvoke&lt;/strong&gt;] supports other HTTP methods; POST is default method&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/endpoint/archive/2008/08/22/rest-in-wcf-part-ix-controlling-the-uri.aspx"&gt;http://blogs.msdn.com/endpoint/archive/2008/08/22/rest-in-wcf-part-ix-controlling-the-uri.aspx&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://weblogs.asp.net/jgalloway/archive/2007/05/02/mix07-wcf-adding-system-uritemplate-webget-and-webinvoke.aspx"&gt;http://weblogs.asp.net/jgalloway/archive/2007/05/02/mix07-wcf-adding-system-uritemplate-webget-and-webinvoke.aspx&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Corresponding to previous version&amp;#39;s URL concept the available resources are in&lt;/p&gt;
&lt;p&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/ms972974.aspx"&gt;http://msdn.microsoft.com/en-us/library/ms972974.aspx&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://weblogs.asp.net/scottgu/archive/2007/02/26/tip-trick-url-rewriting-with-asp-net.aspx"&gt;http://weblogs.asp.net/scottgu/archive/2007/02/26/tip-trick-url-rewriting-with-asp-net.aspx&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.simple-talk.com/dotnet/asp.net/a-complete-url-rewriting-solution-for-asp.net-2.0/"&gt;http://www.simple-talk.com/dotnet/asp.net/a-complete-url-rewriting-solution-for-asp.net-2.0/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1657552" width="1" height="1"&gt;</content><author><name>abu</name><uri>http://msmvps.com/members/abu/default.aspx</uri></author><category term="REST" scheme="http://msmvps.com/blogs/abu/archive/tags/REST/default.aspx" /><category term="AJAX" scheme="http://msmvps.com/blogs/abu/archive/tags/AJAX/default.aspx" /><category term="WCF" scheme="http://msmvps.com/blogs/abu/archive/tags/WCF/default.aspx" /><category term="ASP.NET" scheme="http://msmvps.com/blogs/abu/archive/tags/ASP.NET/default.aspx" /><category term=".NET" scheme="http://msmvps.com/blogs/abu/archive/tags/.NET/default.aspx" /></entry><entry><title>WAW!!! What a serie of blog posts for "Covariance and Contravariance" - C# Future...</title><link rel="alternate" type="text/html" href="/blogs/abu/archive/2008/12/16/waw-what-a-serie-of-blog-posts-for-quot-covariance-and-contravariance-quot-c-future.aspx" /><id>/blogs/abu/archive/2008/12/16/waw-what-a-serie-of-blog-posts-for-quot-covariance-and-contravariance-quot-c-future.aspx</id><published>2008-12-16T18:46:00Z</published><updated>2008-12-16T18:46:00Z</updated><content type="html">&lt;p&gt;So nicely step by step blogged by Eric Lippert&amp;nbsp;for &amp;quot;Covariance and Contravariance&amp;quot;&amp;nbsp;as &amp;quot;Fabulous Adventures In Coding&amp;quot;&lt;/p&gt;
&lt;li class="BlogPostArea CommonListRowAlt"&gt;&lt;a target="_blank" href="http://blogs.msdn.com/ericlippert/archive/2008/05/07/covariance-and-contravariance-part-twelve-to-infinity-but-not-beyond.aspx"&gt;Covariance and Contravariance, Part Eleven: To infinity, but not beyond&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://blogs.msdn.com/ericlippert/archive/2007/12/06/immutability-in-c-part-three-a-covariant-immutable-stack.aspx"&gt;Immutability in C# Part Three: A Covariant Immutable Stack&lt;/a&gt; &lt;/li&gt;
&lt;li class="BlogPostArea CommonListRowAlt"&gt;&lt;a target="_blank" href="http://blogs.msdn.com/ericlippert/archive/2007/11/09/covariance-and-contravariance-in-c-part-ten-dealing-with-ambiguity.aspx"&gt;Covariance and Contravariance in C#, Part Ten: Dealing With Ambiguity&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://blogs.msdn.com/ericlippert/archive/2007/11/02/covariance-and-contravariance-in-c-part-nine-breaking-changes.aspx"&gt;Covariance and Contravariance in C#, Part Nine: Breaking Changes&lt;/a&gt; &lt;/li&gt;
&lt;li class="BlogPostArea CommonListRowAlt"&gt;&lt;a target="_blank" href="http://blogs.msdn.com/ericlippert/archive/2007/10/31/covariance-and-contravariance-in-c-part-eight-syntax-options.aspx"&gt;Covariance and Contravariance in C#, Part Eight: Syntax Options&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://blogs.msdn.com/ericlippert/archive/2007/10/29/covariance-and-contravariance-in-c-part-seven-why-do-we-need-a-syntax-at-all.aspx"&gt;Covariance and Contravariance in C# Part Seven: Why Do We Need A Syntax At All?&lt;/a&gt; &lt;/li&gt;
&lt;li class="BlogPostArea CommonListRowAlt"&gt;&lt;a target="_blank" href="http://blogs.msdn.com/ericlippert/archive/2007/10/26/covariance-and-contravariance-in-c-part-five-interface-variance.aspx"&gt;Covariance and Contravariance in C#, Part Six: Interface Variance&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://blogs.msdn.com/ericlippert/archive/2007/10/24/covariance-and-contravariance-in-c-part-five-higher-order-functions-hurt-my-brain.aspx"&gt;Covariance and Contravariance In C#, Part Five: Higher Order Functions Hurt My Brain&lt;/a&gt; &lt;/li&gt;
&lt;li class="BlogPostArea CommonListRowAlt"&gt;&lt;a target="_blank" href="http://blogs.msdn.com/ericlippert/archive/2007/10/22/covariance-and-contravariance-in-c-part-four-real-delegate-variance.aspx"&gt;Covariance and Contravariance in C#, Part Four: Real Delegate Variance&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://blogs.msdn.com/ericlippert/archive/2007/10/19/covariance-and-contravariance-in-c-part-three-member-group-conversion-variance.aspx"&gt;Covariance and Contravariance in C#, Part Three: Method Group Conversion Variance&lt;/a&gt; &lt;/li&gt;
&lt;li class="BlogPostArea CommonListRowAlt"&gt;&lt;a target="_blank" href="http://blogs.msdn.com/ericlippert/archive/2007/10/17/covariance-and-contravariance-in-c-part-two-array-covariance.aspx"&gt;Covariance and Contravariance in C#, Part Two: Array Covariance&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://blogs.msdn.com/ericlippert/archive/2007/10/16/covariance-and-contravariance-in-c-part-one.aspx"&gt;Covariance and Contravariance in C#, Part One&lt;/a&gt; &lt;/li&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1656969" width="1" height="1"&gt;</content><author><name>abu</name><uri>http://msmvps.com/members/abu/default.aspx</uri></author><category term=".NET" scheme="http://msmvps.com/blogs/abu/archive/tags/.NET/default.aspx" /><category term="C#" scheme="http://msmvps.com/blogs/abu/archive/tags/C_2300_/default.aspx" /></entry><entry><title>C# Dynamic - CSharp's new feature of the coming version 4.0</title><link rel="alternate" type="text/html" href="/blogs/abu/archive/2008/12/15/c-dynamic-csharp-s-new-feature-of-the-coming-version-4-0.aspx" /><id>/blogs/abu/archive/2008/12/15/c-dynamic-csharp-s-new-feature-of-the-coming-version-4-0.aspx</id><published>2008-12-15T17:50:00Z</published><updated>2008-12-15T17:50:00Z</updated><content type="html">&lt;p&gt;&lt;strong&gt;Very good resources for the coming version...&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Sam Ng&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href="http://blogs.msdn.com/samng/archive/2008/10/29/dynamic-in-c.aspx"&gt;&lt;span style="color:#0000ff;"&gt;Dynamic in C# Part One&lt;/span&gt;&lt;/a&gt;&lt;/strong&gt; &lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href="http://blogs.msdn.com/samng/archive/2008/11/02/dynamic-in-c-ii-basics.aspx"&gt;&lt;span style="color:#0000ff;"&gt;Dynamic in C# Part Two&lt;/span&gt;&lt;/a&gt;&lt;/strong&gt; &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Chris Burrows&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://blogs.msdn.com/cburrows/archive/2008/10/27/c-dynamic.aspx"&gt;&lt;span style="color:#0000ff;"&gt;C# Dynamic Part I&lt;/span&gt;&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a href="http://blogs.msdn.com/cburrows/archive/2008/10/28/c-dynamic-part-ii.aspx"&gt;&lt;span style="color:#0000ff;"&gt;C# Dynamic Part II&lt;/span&gt;&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a href="http://blogs.msdn.com/cburrows/archive/2008/10/29/c-dynamic-part-iii.aspx"&gt;&lt;span style="color:#0000ff;"&gt;C# Dynamic Part III&lt;/span&gt;&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Eric Lippert&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://blogs.msdn.com/ericlippert/archive/2008/10/08/the-future-of-c-part-one.aspx"&gt;&lt;span style="color:#0000ff;"&gt;The Future of C# Part One&lt;/span&gt;&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a href="http://blogs.msdn.com/ericlippert/archive/2008/10/28/the-future-of-c-part-two.aspx"&gt;&lt;span style="color:#0000ff;"&gt;The Future of C# Part Two&lt;/span&gt;&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a href="http://blogs.msdn.com/ericlippert/archive/2008/10/29/the-future-of-c-part-three-on-video-plus-the-dead-trees-edition.aspx"&gt;&lt;span style="color:#0000ff;"&gt;The Future of C# Part Three&lt;/span&gt;&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a href="http://blogs.msdn.com/ericlippert/archive/2008/11/02/the-future-of-c-part-four-yet-more-video.aspx"&gt;&lt;span style="color:#0000ff;"&gt;The Future of C# Part Four&lt;/span&gt;&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;PDC&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;TL16: &lt;a href="http://channel9.msdn.com/pdc2008/TL16/"&gt;The Future of C#&lt;/a&gt; 
&lt;ul&gt;
&lt;li&gt;Anders Hejlsberg &lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;TL10: &lt;a href="http://channel9.msdn.com/pdc2008/TL10/"&gt;Deep Dive: Dynamic Languages in .NET&lt;/a&gt; 
&lt;ul&gt;
&lt;li&gt;Speaker: Jim Hugunin &lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;TL11: &lt;a href="http://channel9.msdn.com/pdc2008/TL11/"&gt;An Introduction to Microsoft F#&lt;/a&gt; 
&lt;ul&gt;
&lt;li&gt;Speaker: Luca Bolognese &lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;TL12: &lt;a href="http://channel9.msdn.com/pdc2008/TL12/"&gt;Future Directions for Microsoft Visual Basic&lt;/a&gt; 
&lt;ul&gt;
&lt;li&gt;Speaker: Paul Vick and Lucian Wischik &lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;TL44 &lt;a href="http://channel9.msdn.com/pdc2008/TL44/"&gt;IronRuby: The Right Language for the Right Job&lt;/a&gt; 
&lt;ul&gt;
&lt;li&gt;Speaker: John Lam &lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;TL46: &lt;a href="http://channel9.msdn.com/pdc2008/TL46/"&gt;Microsoft Visual C# IDE: Tips and Tricks&lt;/a&gt; 
&lt;ul&gt;
&lt;li&gt;Dustin Campbell &lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;TL54: &lt;a href="http://channel9.msdn.com/pdc2008/TL54/"&gt;Natural Interop with Silverlight, Office and Python&lt;/a&gt; 
&lt;ul&gt;
&lt;li&gt;Alex Turner &lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;TL57: A &lt;a href="http://channel9.msdn.com/pdc2008/TL57/"&gt;Panel on the Future of Programming Languages&lt;/a&gt; 
&lt;ul&gt;
&lt;li&gt;G. Bracha, D.Crockford, A. Hejlsberg, E. Meijer, W.Schulte, J. Siek &lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1656788" width="1" height="1"&gt;</content><author><name>abu</name><uri>http://msmvps.com/members/abu/default.aspx</uri></author><category term="ASP.NET" scheme="http://msmvps.com/blogs/abu/archive/tags/ASP.NET/default.aspx" /><category term=".NET" scheme="http://msmvps.com/blogs/abu/archive/tags/.NET/default.aspx" /><category term="C#" scheme="http://msmvps.com/blogs/abu/archive/tags/C_2300_/default.aspx" /><category term="VS2010" scheme="http://msmvps.com/blogs/abu/archive/tags/VS2010/default.aspx" /><category term="OSLO" scheme="http://msmvps.com/blogs/abu/archive/tags/OSLO/default.aspx" /></entry><entry><title>"What NEXT?" - Visual Studio 2010 and with C# 4.0 and VB.NET 10.0 (Oslo)</title><link rel="alternate" type="text/html" href="/blogs/abu/archive/2008/11/29/quot-what-next-quot-visual-studio-2010-and-with-c-4-0-and-vb-net-10-0.aspx" /><id>/blogs/abu/archive/2008/11/29/quot-what-next-quot-visual-studio-2010-and-with-c-4-0-and-vb-net-10-0.aspx</id><published>2008-11-29T18:19:00Z</published><updated>2008-11-29T18:19:00Z</updated><content type="html">&lt;p&gt;&amp;quot;What&amp;#39;s Next?&amp;quot; - Everybody is interested to know about new and upcoming things. While I purchase new thing, I could not wait to use. Previously I was curious to know abour Whidbey, Orcas, WinFx ( Indigo, Avalon)... Next???&lt;/p&gt;
&lt;p&gt;Now it is the case for Oslo too.&lt;/p&gt;
&lt;p&gt;Now after PDC 2008, may many of us come to know about Visual Studio 2010.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;quot;10&amp;quot; - this one very significant number for football player or hockey player; only the most important player are getting No. 10 as their jersey number.&lt;/p&gt;
&lt;p&gt;Yes, this time, it is &amp;quot;10&amp;quot; - Visual Studio 2010, VB.NET 10, Visual Studio 10 is the NEXT.&lt;/p&gt;
&lt;p&gt;Here are some very useful links related to this.&lt;/p&gt;
&lt;p&gt;&lt;a target="_blank" href="http://blogs.msdn.com/kirillosenkov/archive/2008/11/20/links-about-visual-studio-2010-and-c-4-0.aspx"&gt;&lt;/a&gt;&lt;a target="_blank" href="http://blogs.msdn.com/kirillosenkov/archive/2008/11/20/links-about-visual-studio-2010-and-c-4-0.aspx"&gt;http://blogs.msdn.com/kirillosenkov/archive/2008/11/20/links-about-visual-studio-2010-and-c-4-0.aspx&lt;/a&gt; &lt;a&gt;&lt;/a&gt;&lt;/p&gt;
&lt;div&gt;&lt;/div&gt;
&lt;p&gt;&lt;a target="_blank" href="http://weblogs.asp.net/pgielens/archive/2008/10/27/the-future-of-c-4-0.aspx"&gt;http://weblogs.asp.net/pgielens/archive/2008/10/27/the-future-of-c-4-0.aspx&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a target="_blank" href="http://code.msdn.microsoft.com/csharpfuture"&gt;http://code.msdn.microsoft.com/csharpfuture&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a target="_blank" href="http://code.msdn.microsoft.com/csharpfuture/Wiki/View.aspx?title=Home&amp;amp;version=4"&gt;http://code.msdn.microsoft.com/csharpfuture/Wiki/View.aspx?title=Home&amp;amp;version=4&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;a target="_blank" href="http://blogs.msdn.com/bclteam/archive/2008/11/04/what-s-new-in-the-bcl-in-net-4-0-justin-van-patten.aspx"&gt;http://blogs.msdn.com/bclteam/archive/2008/11/04/what-s-new-in-the-bcl-in-net-4-0-justin-van-patten.aspx&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1655461" width="1" height="1"&gt;</content><author><name>abu</name><uri>http://msmvps.com/members/abu/default.aspx</uri></author><category term=".NET" scheme="http://msmvps.com/blogs/abu/archive/tags/.NET/default.aspx" /><category term="C#" scheme="http://msmvps.com/blogs/abu/archive/tags/C_2300_/default.aspx" /><category term="VS2010" scheme="http://msmvps.com/blogs/abu/archive/tags/VS2010/default.aspx" /></entry><entry><title>C# Language Evolution - Features of C# 4.0</title><link rel="alternate" type="text/html" href="/blogs/abu/archive/2008/11/29/c-language-evolution-features-of-c-4-0.aspx" /><id>/blogs/abu/archive/2008/11/29/c-language-evolution-features-of-c-4-0.aspx</id><published>2008-11-29T06:27:00Z</published><updated>2008-11-29T06:27:00Z</updated><content type="html">&lt;p&gt;&lt;img src="http://www.kolkatanet.com/AbuBlog/CSharp/CSharp_Language_Enhancemen.gif" alt="" /&gt;C# Language Enhancement&lt;/p&gt;
&lt;p&gt;&lt;img src="http://www.kolkatanet.com/AbuBlog/CSharp/LINQ-3.0.gif" alt="" /&gt;C# 3,0 LINQ&lt;/p&gt;
&lt;p&gt;&lt;img src="http://www.kolkatanet.com/AbuBlog/CSharp/LINQ-3.0-WithLanguageExtent.gif" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;C# 3.0 and LINQ With Language Extention &lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="http://www.kolkatanet.com/AbuBlog/CSharp/CSharp_Dynamic_Language_Enhance.gif" alt="" /&gt; &lt;strong&gt;C# Dynamic Language Enhancement&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;C# 4.0 can be found on the &lt;a href="https://code.msdn.microsoft.com/Release/ProjectReleases.aspx?ProjectName=csharpfuture&amp;amp;ReleaseId=1686" class="externalLink"&gt;Downloads&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; page. The CSharpDynamic samples include several projects showing how to use Dynamic with Office, IronPython and other technologies. There is also a covariance and contravariance example, and an example show how to use the new IDynamicObject interface to create native C# objects that can be called dynamically.&lt;br /&gt;&lt;br /&gt;The document &lt;a href="http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=csharpfuture&amp;amp;DownloadId=3550" class="externalLink"&gt;New Features in C# 4.0&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; is a high level description of the additions to the C# language, and the samples are designed to show off the new language features, particularly around the dynamic scenario.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1655380" width="1" height="1"&gt;</content><author><name>abu</name><uri>http://msmvps.com/members/abu/default.aspx</uri></author><category term=".NET" scheme="http://msmvps.com/blogs/abu/archive/tags/.NET/default.aspx" /><category term="C#" scheme="http://msmvps.com/blogs/abu/archive/tags/C_2300_/default.aspx" /></entry><entry><title>Application Architecture Pocket Guides </title><link rel="alternate" type="text/html" href="/blogs/abu/archive/2008/11/26/application-architecture-pocket-guides.aspx" /><id>/blogs/abu/archive/2008/11/26/application-architecture-pocket-guides.aspx</id><published>2008-11-26T05:27:00Z</published><updated>2008-11-26T05:27:00Z</updated><content type="html">&lt;p&gt;Application Architecture Pocket Guides &lt;a href="http://blogs.msdn.com/jmeier/archive/tags/AppArch/default.aspx"&gt;http://blogs.msdn.com/jmeier/archive/tags/AppArch/default.aspx&lt;/a&gt;&lt;/p&gt;
&lt;div style="float:right;margin:0px;" class="noprint"&gt;&lt;img border="0" width="154" src="http://blogs.msdn.com/blogfiles/jmeier/WindowsLiveWriter/AgileArchitectureMethodPocketGuide_DF93/Agile%20Architecture%20Method%20Pocket%20Guide_thumb.png" alt="Agile Architecture Method Pocket Guide" height="199" style="display:inline;border-width:0px;" title="Agile Architecture Method Pocket Guide" /&gt; &lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://blogs.msdn.com/jmeier/archive/2008/11/24/web-application-architecture-pocket-guide.aspx"&gt;Web Application Architecture Pocket Guide&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a href="http://blogs.msdn.com/jmeier/archive/2008/11/24/mobile-application-architecture-pocket-guide.aspx"&gt;Mobile Application Architecture Pocket Guide&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a href="http://blogs.msdn.com/jmeier/archive/2008/11/24/ria-architecture-pocket-guide.aspx"&gt;RIA Architecture Pocket Guide&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a href="http://blogs.msdn.com/jmeier/archive/2008/11/24/rich-client-application-architecture-pocket-guide.aspx"&gt;Rich Client Application Architecture Pocket Guide&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a href="http://blogs.msdn.com/jmeier/archive/2008/11/24/service-architecture-pocket-guide.aspx"&gt;Service Architecture Pocket Guide&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a href="http://blogs.msdn.com/jmeier/archive/2008/11/24/application-architecture-diagrams-added-to-codeplex.aspx"&gt;Application Architecture Visios Now Available&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://blogs.msdn.com/jmeier/archive/2008/11/24/service-architecture-pocket-guide.aspx" title="http://blogs.msdn.com/jmeier/archive/2008/11/24/service-architecture-pocket-guide.aspx"&gt;Agile Architecture Method Pocket Guide &lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1655098" width="1" height="1"&gt;</content><author><name>abu</name><uri>http://msmvps.com/members/abu/default.aspx</uri></author><category term="Agile" scheme="http://msmvps.com/blogs/abu/archive/tags/Agile/default.aspx" /><category term="Architecture" scheme="http://msmvps.com/blogs/abu/archive/tags/Architecture/default.aspx" /></entry></feed>