<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Lifeng's Blog : WCF</title><link>http://blogs.msdn.com/lifenglu/archive/tags/WCF/default.aspx</link><description>Tags: WCF</description><dc:language>en</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>Edit .svcmap file to access "hidden" functions of service references</title><link>http://blogs.msdn.com/lifenglu/archive/2008/08/01/edit-svcmap-file-to-access-hidden-functions-of-service-references.aspx</link><pubDate>Fri, 01 Aug 2008 20:40:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8801194</guid><dc:creator>Lifeng Lu</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/lifenglu/comments/8801194.aspx</comments><wfw:commentRss>http://blogs.msdn.com/lifenglu/commentrss.aspx?PostID=8801194</wfw:commentRss><description>&lt;P&gt;Not all&amp;nbsp;code generation options of service references are exposed through its UI.&amp;nbsp; To prevent users to be confused by some advanced options, the configuration dialog is designed to only expose options which are most likely to be used.&amp;nbsp; We can only access other options by editing the .svcmap file.&amp;nbsp; Unfortunately, the file is hidden by default, so people won't discover it easily, and most people will prevent to edit hidden files as well to prevent corrupting the project by accident.&lt;/P&gt;
&lt;P&gt;Well, this .svcmap file is editable, and Xml Intellisense actually works here, so changing it is not that difficult.&amp;nbsp; Certainly, we are not interested to change those options which can be changed easily through the configuration dialog.&amp;nbsp; Here are something you can do with editing this file, but otherwise not doable:&lt;/P&gt;
&lt;P&gt;1, You can enable sharing service contract types:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; by adding ServiceContractMapping in the ServiceContractMappings section, you will force the code generator to use a shared service contract type defined in a referenced assembly (you cannot share a type defined in the current project.)&amp;nbsp; The service reference will still generate configuration to the app.config file.&lt;/P&gt;
&lt;P&gt;2, you can define complex collection mappings:&lt;/P&gt;
&lt;P&gt;&amp;nbsp; the configuration dialog only support some limited options.&amp;nbsp;Adding CollectionMapping in the file, you get similar function you can get by using svcutil command line.&lt;/P&gt;
&lt;P&gt;3, namespace mappings:&lt;/P&gt;
&lt;P&gt;&amp;nbsp; it works like /namespace option in the svcutil command line&lt;/P&gt;
&lt;P&gt;4, you can add additional MatadataSources!&lt;/P&gt;
&lt;P&gt;&amp;nbsp; actually, you can reference two services in one service reference, and share the data types. Adding additional MetadataSource to the file by hand is the only way to do that today.&amp;nbsp; Once you added, it will be maintained, and it will not be lost, when you update the service. (Actually, you don't need add MetadataFiles by hand.&amp;nbsp; Just add a MetadataSource into the file, save it, and Update the reference, all metadata files will be downloaded automatically.&lt;/P&gt;
&lt;P&gt;5, add additional Metadata files&lt;/P&gt;
&lt;P&gt;&amp;nbsp; It is possible to add additional metadata files to a service reference, just copy them to the folder, and add additional MetadataFile node in the .svcmap file to reference them.&amp;nbsp; They will be used in the code generator.&amp;nbsp; All MetadataFile without a SourceId will not be automatically updated, so they will stay even when you update the service reference.&lt;/P&gt;
&lt;P&gt;6, add private configuration file&lt;/P&gt;
&lt;P&gt;&amp;nbsp;You can add a special extension file with name = "Reference.config" (very similar to configuration.svcinfo).&amp;nbsp; With the configuration file, you can add additional extensions to the code generator. (Unlike adding them to the machine level configuration, things in the Reference.config only affect the code generator in one reference.&amp;nbsp; Special security settings to enable downloading metadata files from a secured server is also possible through a such config file.&lt;/P&gt;
&lt;P&gt;7, additional extension files&lt;/P&gt;
&lt;P&gt;&amp;nbsp; The additional code generator extensions can locate those extensions file registed in the Extension section. It is possible to set additional options through those files.&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8801194" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/lifenglu/archive/tags/WCF/default.aspx">WCF</category><category domain="http://blogs.msdn.com/lifenglu/archive/tags/.svcmap/default.aspx">.svcmap</category></item><item><title>Side by side comparsion between svcutil and the service reference in VS</title><link>http://blogs.msdn.com/lifenglu/archive/2007/08/13/side-by-side-comparsion-between-svcutil-and-the-service-reference-in-vs.aspx</link><pubDate>Tue, 14 Aug 2007 02:47:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:4374321</guid><dc:creator>Lifeng Lu</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/lifenglu/comments/4374321.aspx</comments><wfw:commentRss>http://blogs.msdn.com/lifenglu/commentrss.aspx?PostID=4374321</wfw:commentRss><description>&lt;P&gt;The Service Reference is new feature added into VS Orcas, so we don't have to use svcutil when using VS IDE.&amp;nbsp; Here is the side by side comparsion table between svcutil and the service reference in Orcas:&lt;/P&gt;
&lt;P&gt;
&lt;TABLE class=LightShading-Accent1 style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium none; BORDER-BOTTOM: medium none; BORDER-COLLAPSE: collapse; mso-border-top-alt: solid #4F81BD 1.0pt; mso-border-top-themecolor: accent1; mso-border-bottom-alt: solid #4F81BD 1.0pt; mso-border-bottom-themecolor: accent1; mso-yfti-tbllook: 1184; mso-padding-alt: 0in 5.4pt 0in 5.4pt" cellSpacing=0 cellPadding=0 border=1 class="LightShading-Accent1"&gt;
&lt;TBODY&gt;
&lt;TR style="mso-yfti-irow: -1; mso-yfti-firstrow: yes"&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #4f81bd 1pt solid; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 120pt; PADDING-TOP: 0in; BORDER-BOTTOM: #4f81bd 1pt solid; BACKGROUND-COLOR: transparent; mso-border-top-themecolor: accent1; mso-border-bottom-themecolor: accent1" vAlign=top width=160&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 5"&gt;&lt;B&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;Svcutil command line&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #4f81bd 1pt solid; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 236.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #4f81bd 1pt solid; BACKGROUND-COLOR: transparent; mso-border-top-themecolor: accent1; mso-border-bottom-themecolor: accent1" vAlign=top width=315&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 1"&gt;&lt;B&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;VS service reference (.svcmap)&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #4f81bd 1pt solid; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 0.75in; PADDING-TOP: 0in; BORDER-BOTTOM: #4f81bd 1pt solid; BACKGROUND-COLOR: transparent; mso-border-top-themecolor: accent1; mso-border-bottom-themecolor: accent1" vAlign=top width=72&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 1"&gt;&lt;B&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;VS UI&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 0"&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; BACKGROUND: #d3dfee; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 120pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; mso-background-themecolor: accent1; mso-background-themetint: 63" vAlign=top width=160&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 68"&gt;&lt;B&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;/out&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; BACKGROUND: #d3dfee; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 236.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; mso-background-themecolor: accent1; mso-background-themetint: 63" vAlign=top width=315&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 64"&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;(always delivery from the name of .svcmap)&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; BACKGROUND: #d3dfee; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 0.75in; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; mso-background-themecolor: accent1; mso-background-themetint: 63" vAlign=top width=72&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 64"&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;o:p&gt;&lt;FONT face="Times New Roman" size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 1"&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 120pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=160&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 4"&gt;&lt;B&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;/config&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 236.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=315&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;(always the config file of the project)&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 0.75in; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=72&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;o:p&gt;&lt;FONT face="Times New Roman" size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 2"&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; BACKGROUND: #d3dfee; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 120pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; mso-background-themecolor: accent1; mso-background-themetint: 63" vAlign=top width=160&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 68"&gt;&lt;B&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;/mergeConfig&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; BACKGROUND: #d3dfee; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 236.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; mso-background-themecolor: accent1; mso-background-themetint: 63" vAlign=top width=315&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 64"&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;Always true&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; BACKGROUND: #d3dfee; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 0.75in; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; mso-background-themecolor: accent1; mso-background-themetint: 63" vAlign=top width=72&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 64"&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;o:p&gt;&lt;FONT face="Times New Roman" size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 3"&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 120pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=160&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 4"&gt;&lt;B&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;/noConfig&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 236.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=315&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;Not supported&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 0.75in; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=72&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;o:p&gt;&lt;FONT face="Times New Roman" size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 4"&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; BACKGROUND: #d3dfee; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 120pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; mso-background-themecolor: accent1; mso-background-themetint: 63" vAlign=top width=160&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 68"&gt;&lt;B&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;/dataContractOnly&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; BACKGROUND: #d3dfee; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 236.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; mso-background-themecolor: accent1; mso-background-themetint: 63" vAlign=top width=315&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 64"&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;Not supported&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; BACKGROUND: #d3dfee; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 0.75in; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; mso-background-themecolor: accent1; mso-background-themetint: 63" vAlign=top width=72&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 64"&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;o:p&gt;&lt;FONT face="Times New Roman" size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 5"&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 120pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=160&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 4"&gt;&lt;B&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;/language&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 236.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=315&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;Always based on the project&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 0.75in; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=72&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;o:p&gt;&lt;FONT face="Times New Roman" size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 6"&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; BACKGROUND: #d3dfee; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 120pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; mso-background-themecolor: accent1; mso-background-themetint: 63" vAlign=top width=160&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 68"&gt;&lt;B&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;/namespace&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; BACKGROUND: #d3dfee; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 236.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; mso-background-themecolor: accent1; mso-background-themetint: 63" vAlign=top width=315&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 64"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #a31515; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;NamespaceMappings&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 64"&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;But *-&amp;gt; ReferenceName is always added&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; BACKGROUND: #d3dfee; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 0.75in; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; mso-background-themecolor: accent1; mso-background-themetint: 63" vAlign=top width=72&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 64"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 7"&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 120pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=160&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 4"&gt;&lt;B&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;/messageContract&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 236.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=315&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #a31515; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;GenerateMessageContracts&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 0.75in; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=72&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;Yes&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 8"&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; BACKGROUND: #d3dfee; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 120pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; mso-background-themecolor: accent1; mso-background-themetint: 63" vAlign=top width=160&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 68"&gt;&lt;B&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;/enableDataBinding&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; BACKGROUND: #d3dfee; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 236.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; mso-background-themecolor: accent1; mso-background-themetint: 63" vAlign=top width=315&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 64"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #a31515; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;EnableDataBinding&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; BACKGROUND: #d3dfee; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 0.75in; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; mso-background-themecolor: accent1; mso-background-themetint: 63" vAlign=top width=72&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 64"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 9"&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 120pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=160&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 4"&gt;&lt;B&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;/serializable&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 236.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=315&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #a31515; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;GenerateSerializableTypes&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 0.75in; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=72&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 10"&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; BACKGROUND: #d3dfee; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 120pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; mso-background-themecolor: accent1; mso-background-themetint: 63" vAlign=top width=160&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 68"&gt;&lt;B&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;/async&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; BACKGROUND: #d3dfee; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 236.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; mso-background-themecolor: accent1; mso-background-themetint: 63" vAlign=top width=315&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 64"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #a31515; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;GenerateAsynchronousMethods&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; BACKGROUND: #d3dfee; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 0.75in; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; mso-background-themecolor: accent1; mso-background-themetint: 63" vAlign=top width=72&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 64"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;Yes&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 11"&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 120pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=160&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 4"&gt;&lt;B&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;/internal&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 236.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=315&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #a31515; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;GenerateInternalTypes&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 0.75in; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=72&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;Yes&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 12"&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; BACKGROUND: #d3dfee; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 120pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; mso-background-themecolor: accent1; mso-background-themetint: 63" vAlign=top width=160&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 68"&gt;&lt;B&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;/reference&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; BACKGROUND: #d3dfee; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 236.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; mso-background-themecolor: accent1; mso-background-themetint: 63" vAlign=top width=315&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 64"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #a31515; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;ReferenceAllAssemblies&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 64"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #a31515; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;ReferencedAssemblies&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 64"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #a31515; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;ReferencedDataContractTypes&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 64"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #a31515; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;ServiceContractMappings&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 64"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;Can pick up existing reference assemblies of the project automatically&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; BACKGROUND: #d3dfee; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 0.75in; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; mso-background-themecolor: accent1; mso-background-themetint: 63" vAlign=top width=72&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 64"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;Limited&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 13"&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 120pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=160&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 4"&gt;&lt;B&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;/collectionType&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 236.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=315&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #a31515; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;CollectionMappings&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 0.75in; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=72&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;Limited&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 14"&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; BACKGROUND: #d3dfee; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 120pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; mso-background-themecolor: accent1; mso-background-themetint: 63" vAlign=top width=160&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 68"&gt;&lt;B&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;/excludeType&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; BACKGROUND: #d3dfee; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 236.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; mso-background-themecolor: accent1; mso-background-themetint: 63" vAlign=top width=315&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 64"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #a31515; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;ExcludedTypes&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; BACKGROUND: #d3dfee; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 0.75in; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; mso-background-themecolor: accent1; mso-background-themetint: 63" vAlign=top width=72&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 64"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 15"&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 120pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=160&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 4"&gt;&lt;B&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;/noStdLib&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 236.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=315&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;FONT face="Times New Roman" size=3&gt;Through &lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #a31515; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;ReferencedAssemblies&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 0.75in; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=72&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;Yes&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 16"&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; BACKGROUND: #d3dfee; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 120pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; mso-background-themecolor: accent1; mso-background-themetint: 63" vAlign=top width=160&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 68"&gt;&lt;B&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;/serializer&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; BACKGROUND: #d3dfee; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 236.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; mso-background-themecolor: accent1; mso-background-themetint: 63" vAlign=top width=315&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 64"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #a31515; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;Serializer&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; BACKGROUND: #d3dfee; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 0.75in; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; mso-background-themecolor: accent1; mso-background-themetint: 63" vAlign=top width=72&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 64"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 17"&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 120pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=160&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 4"&gt;&lt;B&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;/importXmlTypes&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 236.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=315&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #a31515; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;ImportXmlTypes&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 0.75in; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=72&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 18"&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; BACKGROUND: #d3dfee; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 120pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; mso-background-themecolor: accent1; mso-background-themetint: 63" vAlign=top width=160&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 68"&gt;&lt;B&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;/targetClientVersion&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; BACKGROUND: #d3dfee; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 236.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; mso-background-themecolor: accent1; mso-background-themetint: 63" vAlign=top width=315&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 64"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;Based on the project&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; BACKGROUND: #d3dfee; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 0.75in; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; mso-background-themecolor: accent1; mso-background-themetint: 63" vAlign=top width=72&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 64"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 19"&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 120pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=160&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 4"&gt;&lt;B&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;/t:metadata&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 236.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=315&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;Not supported&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 0.75in; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=72&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 20"&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; BACKGROUND: #d3dfee; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 120pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; mso-background-themecolor: accent1; mso-background-themetint: 63" vAlign=top width=160&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 68"&gt;&lt;B&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;/validation&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; BACKGROUND: #d3dfee; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 236.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; mso-background-themecolor: accent1; mso-background-themetint: 63" vAlign=top width=315&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 64"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;Not supported&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; BACKGROUND: #d3dfee; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 0.75in; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; mso-background-themecolor: accent1; mso-background-themetint: 63" vAlign=top width=72&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 64"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 21"&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 120pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=160&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 4"&gt;&lt;B&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;/t:xmlSerializer&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 236.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=315&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;Not supported&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 0.75in; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" vAlign=top width=72&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 22"&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; BACKGROUND: #d3dfee; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 120pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; mso-background-themecolor: accent1; mso-background-themetint: 63" vAlign=top width=160&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 68"&gt;&lt;B&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;Multiple url/file&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; BACKGROUND: #d3dfee; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 236.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; mso-background-themecolor: accent1; mso-background-themetint: 63" vAlign=top width=315&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 64"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #a31515; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;MetadataSources&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; BACKGROUND: #d3dfee; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 0.75in; PADDING-TOP: 0in; BORDER-BOTTOM: #ece9d8; mso-background-themecolor: accent1; mso-background-themetint: 63" vAlign=top width=72&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 64"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 23; mso-yfti-lastrow: yes"&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 120pt; PADDING-TOP: 0in; BORDER-BOTTOM: #4f81bd 1pt solid; BACKGROUND-COLOR: transparent; mso-border-bottom-themecolor: accent1" vAlign=top width=160&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 4"&gt;&lt;B&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;FONT size=3&gt;&lt;FONT face="Times New Roman"&gt;/svcutilConfig&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 236.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: #4f81bd 1pt solid; BACKGROUND-COLOR: transparent; mso-border-bottom-themecolor: accent1" vAlign=top width=315&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #a31515; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;ExtensionFile Name=”Reference.config”&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; /&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #365f91; mso-themecolor: accent1; mso-themeshade: 191"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #ece9d8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #ece9d8; WIDTH: 0.75in; PADDING-TOP: 0in; BORDER-BOTTOM: #4f81bd 1pt solid; BACKGROUND-COLOR: transparent; mso-border-bottom-themecolor: accent1" vAlign=top width=72&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;FONT face="Times New Roman" size=3&gt;&amp;nbsp;Essentially, the svcutil is built for several tasks like exporting metadata, validating the service.&amp;nbsp; But the service reference is built for generating proxy/configuration only.&amp;nbsp; However,&amp;nbsp;in&amp;nbsp;the proxy/configuration generating scenario,&amp;nbsp;the function of the service reference and svcutil are overlapped.&amp;nbsp; The service reference supports most options svcutil supports in its command line.&amp;nbsp; However, to access those options, editing the .svcmap file is necessary&amp;nbsp; (only limited options are exposed through UI.)&amp;nbsp; By saving the options in a file, however, it is easier to repeat the process, when the service is updated.&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;FONT face="Times New Roman" size=3&gt;&lt;/FONT&gt;&lt;/o:p&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;FONT face="Times New Roman" size=3&gt;&amp;nbsp;The advantage to use the service reference is clear when using the IDE.&amp;nbsp; We don't lose most ablility of the svcutil tool, but gain some convenience: options like the language/targetPlatform don't have to be chose again, but will be picked up from the project system automatically.&amp;nbsp; The result config is also automatically merged, and previous injected configuration will be tracked, and removed when the reference is removed or updated, so it won't inject lots of duplicated items. (That function is limited in this version if binding in the configuration is editted.)&amp;nbsp; The IDE also supports better experience when the service is secured. &lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;FONT face="Times New Roman" size=3&gt;&lt;/FONT&gt;&lt;/o:p&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;FONT face="Times New Roman" size=3&gt;&lt;/FONT&gt;&lt;/o:p&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=4374321" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/lifenglu/archive/tags/WCF/default.aspx">WCF</category><category domain="http://blogs.msdn.com/lifenglu/archive/tags/.svcmap/default.aspx">.svcmap</category></item><item><title>Passing DataTable across web/wcf services</title><link>http://blogs.msdn.com/lifenglu/archive/2007/08/01/passing-datatable-across-web-wcf-services.aspx</link><pubDate>Wed, 01 Aug 2007 23:46:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:4175813</guid><dc:creator>Lifeng Lu</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/lifenglu/comments/4175813.aspx</comments><wfw:commentRss>http://blogs.msdn.com/lifenglu/commentrss.aspx?PostID=4175813</wfw:commentRss><description>&lt;P&gt;Passing DataTable (without embeded into a dataset) across web services is supported in .Net 2.0 framework.&amp;nbsp; However we found a bug in this area, which might affect using this feature with strong typed dataTable.&amp;nbsp; For example, when a web service function wants to return a DataTable to the client, an independent dataTable (a dataTable which is not a part of a dataset) will work, but a dataTable inside a dataSet won't work.&amp;nbsp; What happens is that the client side couldn't deserialize the dataTable from wire.&amp;nbsp; The root reason is the DataTable inside&amp;nbsp;a dataset inherits a schema namespace from the dataSet, but an independent datatable has an empty namespace (unless we change it).&amp;nbsp; Data cannot be changed between two dataTables with different namespace.&lt;/P&gt;
&lt;P&gt;The problem is that the instance of the dataTable on the client side is created by framework directly. It is impossible to change the namespace without changing generated strong type dataset code.&amp;nbsp; To work around this issue, the server side need copy data to an independent dataTable before passing it to the client.&lt;/P&gt;
&lt;P&gt;That affects both .Net 2.0 web services and 3.0 Windows communication fundation services.&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=4175813" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/lifenglu/archive/tags/WCF/default.aspx">WCF</category><category domain="http://blogs.msdn.com/lifenglu/archive/tags/ASMX/default.aspx">ASMX</category></item><item><title>.svcmap file</title><link>http://blogs.msdn.com/lifenglu/archive/2007/06/15/svcmap-file.aspx</link><pubDate>Sat, 16 Jun 2007 02:08:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:3323607</guid><dc:creator>Lifeng Lu</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/lifenglu/comments/3323607.aspx</comments><wfw:commentRss>http://blogs.msdn.com/lifenglu/commentrss.aspx?PostID=3323607</wfw:commentRss><description>&lt;P&gt;After&amp;nbsp;we add a WCF service reference into a Visual Studio project, a .svcmap file will be added to the project, and it contains most information of the service reference. Actually, it is the only essential file of the reference. In most case, we can remove all other files in the service reference, and still can pull down all the files from services by updating the service reference.&amp;nbsp; By default the .svcmap file is hidden in the solution explorer unless we turn on "show all files..." option.&lt;/P&gt;
&lt;P&gt;Do I need understand the .svcmap file?&amp;nbsp; No, you don't have to, if you just want to play with the new WCF feature, just like you don't have to know much about command line options of the svcutil tool before you start to use that.&amp;nbsp; Actually,&amp;nbsp;the file contains options for the proxy code generator, makes it equlivent to those command line options in many cases.&amp;nbsp; However, when we need deal with some slightly complex scenarios, like consuming an old web services, sometimes without turning those options, we don't get useful proxy code.&amp;nbsp; That is when we need look into this file.&lt;/P&gt;
&lt;P&gt;Some common code generator options are exposed through a "service reference settings" dialog (not in beta1).&amp;nbsp; But many of them are not exposed through any UI.&amp;nbsp; To change those options, we will have to open and edit the .svcmap file inside a service. Fortunatly, the format of the file is fairly simple, and the schema of that file is shipped with the Visual Studio, so the Xml Editor will provide intellisense when we edit the file.&lt;/P&gt;
&lt;P&gt;Although the most options in the .svcmap file works exactly the same way as command line options of svcutil tool, there&amp;nbsp;is some difference between them.&amp;nbsp; For example, when you turn on type sharing in existing assemblies, the svcutil will share service contract types as well as data contract types.&amp;nbsp; But the code generator in VS will only share data contract types.&amp;nbsp; Service contract types will not be shared automatically.&amp;nbsp; A white list must be added in the .svcmap file to make service contract type sharing to work.&lt;/P&gt;
&lt;P&gt;Other than the code generator options, there are some interesting things we can do when we edit the file directly.&amp;nbsp; One sample is that there is a MetadataSource section in the file, which contains where to download metadata file. By default, there is always one MetadataSource when the service reference is created through UI. It doesn't have to be this way.&amp;nbsp; For example, if the metadata is not exposed by the service, but you get them through other way of communication, like through an email.&amp;nbsp;&amp;nbsp;We can copy all metadata files into the service reference folder, and reference them directly in the .svcmap file, and delete all MetadataSources.&amp;nbsp; The result will be a service reference, which generates valid code, but will not try to download files from a server.&amp;nbsp; Another possible is to add two sources, so the metadata will be pulled into one reference, and code will be generated together.&amp;nbsp; It is similar like providing two URLs in the svcutil tool.&lt;/P&gt;
&lt;P&gt;We can also apply things similar to '/toolconfig' in the svcutil command line. That will allow us to add/remove WSDL/Policy importer extensions.&amp;nbsp; The easiest way is to add those tool configuration in the web.config/app.config of the project.&amp;nbsp; However, that solution has two problems.&amp;nbsp; First, we usually don't want to ship those design time options in the product.&amp;nbsp; The web.config/app.config is a part of the product, so we do mix the design thing and runtime thing in the same place.&amp;nbsp; Second, if&amp;nbsp;we have two service references, and we want different importer extensions for them, there is no way to do so.&amp;nbsp; Fortunately, it is possible to give every service reference a seperated tool config file.&amp;nbsp; The way to do this is to add a Reference.config file in the service reference folder, and reference that file as an extension file in the .svcmap file, just like how .svcinfo file is referenced.&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=3323607" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/lifenglu/archive/tags/WCF/default.aspx">WCF</category><category domain="http://blogs.msdn.com/lifenglu/archive/tags/.svcmap/default.aspx">.svcmap</category></item><item><title>Files in a service (WCF) references</title><link>http://blogs.msdn.com/lifenglu/archive/2007/05/08/files-in-a-service-wcf-references.aspx</link><pubDate>Wed, 09 May 2007 02:32:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:2490387</guid><dc:creator>Lifeng Lu</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/lifenglu/comments/2490387.aspx</comments><wfw:commentRss>http://blogs.msdn.com/lifenglu/commentrss.aspx?PostID=2490387</wfw:commentRss><description>&lt;P&gt;The new service reference is persisted in a similar way how the old web reference is persisted in a visual studio project.&amp;nbsp;&amp;nbsp;All files including metadata file downloaded from&amp;nbsp;the server will be persisted into a single folder, which&amp;nbsp;defines the CLR namespace proxy code lives in. &lt;/P&gt;
&lt;P&gt;Files in a service reference is not shown in the solution explorer by default, but it is easy to see them by turning on "Show All Files".&lt;/P&gt;
&lt;P&gt;Those metadata file includes all WSDL and XSD files.&amp;nbsp; DISCO files will be also kept, if the metadata is downloaded from a disco port, although those disco files are never used in configuration/proxy generation.&lt;/P&gt;
&lt;P&gt;All those metadata files and code generator operations are persisted in a .svcmap file.&amp;nbsp; The .svcmap file is the basic unit for the proxy/configuration generator.&amp;nbsp; We may add multiple metadata sources into one .svcmap file, so the code generator will handle them at the same time.&amp;nbsp; If the metadata is property prepared, the code generator will generate shared data contracts for multiple service contracts.&amp;nbsp; This is just one function that you have to get by editing the .svcmap file directly, because it is not exposed through simplified UI.&lt;/P&gt;
&lt;P&gt;Besides the .svcmap file, there is a '.svcinfo' file which tracks the configuration added to the app.config/web.config, so that portion can be removed when the service reference is removed from the project.&amp;nbsp; When we update the reference after the service is updated, we will try to update the app.config file, but not just inject another section of configuration into the file, like what svcutil did.&amp;nbsp; The format of this file is not designed to read/edit by human, it is better not to mess up this file.&lt;/P&gt;
&lt;P&gt;However, currently, the fuction to maintain the app.config is faily weak.&amp;nbsp; It is certainly better than svcutil, with which you have to maintain the file by yourself. But while the function works fine when you live with the configuration generated automatically, it doesn't work well after you change it.&amp;nbsp; In most case, it will not take out the configuration changed by you, but will inject the new section side by side with it.&amp;nbsp; That makes that function less useful in those advanced scenarios.&lt;/P&gt;
&lt;P mce_keep="true"&gt;There are talks about what to do when the injected configuration has been updated, but the extensibility of the configuration in WCF makes it more complex than what can be done in a short product cycle.&lt;/P&gt;
&lt;P mce_keep="true"&gt;.svcinfo file is persisted as one extension file of the .svcmap file. The .svcmap file allows other customized extension files, so actually a customized WSDL importer/policy importer extensions could pick up options from one extension files to control options in code generator. BTW, just like svcutil, those importer extensions are supported in VS.&amp;nbsp;&amp;nbsp;Without the toolconfig parameter, you need add those extensions in the machine.config or app.config of the project.&amp;nbsp; The drawback to put those design time configuration into app.config is that you would leak them into the runtime.&amp;nbsp; In beta 2, it is possible to put those design time configuration in a seperated config file.&lt;/P&gt;
&lt;P mce_keep="true"&gt;So, an advanced user could write an extension to change&amp;nbsp;generated&amp;nbsp;configurations by changing certain values, or remove not needed ports.&amp;nbsp; It could be done in a general way, and its real behavior can be controlled by an extension file, which could sepecify like which port need be removed, and what binding parameter need be changed, so you don't have to manage the app.config file by hand.&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=2490387" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/lifenglu/archive/tags/WCF/default.aspx">WCF</category></item><item><title>Windows communication framework client in web site projects</title><link>http://blogs.msdn.com/lifenglu/archive/2007/04/26/windows-communication-framework-client-in-web-site-projects.aspx</link><pubDate>Thu, 26 Apr 2007 21:09:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:2289060</guid><dc:creator>Lifeng Lu</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/lifenglu/comments/2289060.aspx</comments><wfw:commentRss>http://blogs.msdn.com/lifenglu/commentrss.aspx?PostID=2289060</wfw:commentRss><description>&lt;P&gt;The Visual Studio Orcas beta1 supports&amp;nbsp;generating and using WCF client in the ASP.Net web site projects.&amp;nbsp; From the platform point of view, ASP.Net wants to enable an user to build a web site without any Visual Studio tools. The feature to generate WCF client has been built with the same sprit.&amp;nbsp; With Visual studio, you can easily add a WCF client, but without it, you can create your own by creating a 'svcmap' file.&amp;nbsp; The 'svcmap' file will be processed by a build provider at the runtime to generate WCF client code, which will be compiled on the fly, so web site code could consume those classes.&lt;/P&gt;
&lt;P&gt;However, that comes with a price.&amp;nbsp; Because the build provider hasn't been built into the 3.0 framework (it is added in 3.5 framework), so it becomes not possible to consume WCF this way in a project targetting 3.0 framework.&amp;nbsp; That is why we can create a WCF server with a 3.0 project, but couldn't consume it in the same project.&amp;nbsp; (Of couse, if you use svcutil tool, it is still valid to generate WCF client, and consume it in a 3.0 web site project.&amp;nbsp; But you have to do everything by hand.)&lt;/P&gt;
&lt;P&gt;However,&amp;nbsp;a build provider might work well to do some simple code generation.&amp;nbsp; It actually is not a good platform to geneate complex proxy code.&amp;nbsp; The problem is that it can either sucess without any message, or fail with one message string, so it becomes no way to output waring messages, if anything might be wrong.&amp;nbsp; That is why it could be difficult to figure out a problem in the WCF client in a web site project.&amp;nbsp; Using a web application project might be a better choice, or maybe I will add the same WCF client to a client project to see warning messages.&lt;/P&gt;
&lt;P&gt;The svcmap file is also used in the client project, so it is actually easy to copy one from a client project to a web site project.&amp;nbsp; Metadata files pulled down from services are saved in individular xsd/wsdl files, and actually referenced by the svcmap file.&amp;nbsp; It is somewhat similar to the discomap file in a web reference in VS 8.&amp;nbsp; The svcmap file also contains code generation options.&amp;nbsp; Many options of the svcutil tool are supported.&amp;nbsp; However, those options are not supported in the beta 1 product.&amp;nbsp; Unlike the old web reference, default proxy works fine in most cases.&amp;nbsp; Sometime, it is necessary to adjust those WCF client options to get right proxy code, that is especially true when you consume a service built with old web service platform.&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=2289060" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/lifenglu/archive/tags/WCF/default.aspx">WCF</category><category domain="http://blogs.msdn.com/lifenglu/archive/tags/ASP.Net/default.aspx">ASP.Net</category></item><item><title>Where is "Add Web Reference" after I install Orcas Beta 1</title><link>http://blogs.msdn.com/lifenglu/archive/2007/04/24/where-is-add-web-reference-after-i-installed-orcas-beta-1.aspx</link><pubDate>Tue, 24 Apr 2007 20:30:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:2262379</guid><dc:creator>Lifeng Lu</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/lifenglu/comments/2262379.aspx</comments><wfw:commentRss>http://blogs.msdn.com/lifenglu/commentrss.aspx?PostID=2262379</wfw:commentRss><description>&lt;P&gt;When you create a project targetting .Net framework 3.x in Orcas Beta 1, the "Add Web Reference..." menu is replaced by "Add Service Reference..." menu.&amp;nbsp; "Add Service Reference..." will create a WCF (Windows Communication Framework) client to a web service.&amp;nbsp; The proxy generated by WCF is very different from&amp;nbsp;old web reference proxy.&amp;nbsp;&amp;nbsp;You can consume old web reference through&amp;nbsp;new WCF client.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;The WCF client is not supported&amp;nbsp;when your project is targetting .Net Framework 2.0. You&amp;nbsp;are still able to add old web reference to those projects.&amp;nbsp; When you upgrade a 2.0 project to 3.x, if your project contains any old web reference, you will still be able to add extra old web reference.&amp;nbsp; In that case, both "add web reference..." and "add service reference..." will be shown.&lt;/P&gt;
&lt;P&gt;So if you do need add old web reference to a project targetting 3.x framework, the workaround is that you can change the targetFramework to 2.0, add one web reference and change back the target framework.&lt;/P&gt;
&lt;P mce_keep="true"&gt;BTW, in Orcas beta 2, you will be able to add Web Reference to 3.x projects.&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=2262379" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/lifenglu/archive/tags/WCF/default.aspx">WCF</category><category domain="http://blogs.msdn.com/lifenglu/archive/tags/Web+Reference/default.aspx">Web Reference</category></item></channel></rss>