<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://bloggingabout.net/utility/FeedStylesheets/atom.xsl" media="screen"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en"><title type="html">Jeffrey Chilberto</title><subtitle type="html">.Net Developer</subtitle><id>http://bloggingabout.net/blogs/chilberto/atom.aspx</id><link rel="alternate" type="text/html" href="http://bloggingabout.net/blogs/chilberto/default.aspx" /><link rel="self" type="application/atom+xml" href="http://bloggingabout.net/blogs/chilberto/atom.aspx" /><generator uri="http://communityserver.org" version="4.0.30619.63">Community Server</generator><updated>2008-01-07T20:53:35Z</updated><entry><title>WCF Test Harness Guide updated</title><link rel="alternate" type="text/html" href="/blogs/chilberto/archive/2008/11/17/wcf-test-harness-guide-updated.aspx" /><id>/blogs/chilberto/archive/2008/11/17/wcf-test-harness-guide-updated.aspx</id><published>2008-11-16T21:06:17Z</published><updated>2008-11-16T21:06:17Z</updated><content type="html">&lt;p&gt;I&amp;#39;ve added a new page to the Guide: &lt;a href="http://bloggingabout.net/blogs/chilberto/pages/wcf-test-harness-adding-a-new-proxy-via-assembly.aspx"&gt;Adding a New Proxy via Assembly&lt;/a&gt;.&amp;nbsp; &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://bloggingabout.net/aggbug.aspx?PostID=477023" width="1" height="1"&gt;</content><author><name>chilberto</name><uri>http://bloggingabout.net/members/chilberto/default.aspx</uri></author><category term="WCF" scheme="http://bloggingabout.net/blogs/chilberto/archive/tags/WCF/default.aspx" /><category term="Test Harness" scheme="http://bloggingabout.net/blogs/chilberto/archive/tags/Test+Harness/default.aspx" /></entry><entry><title>First CodePlex Project: WCF Test Harness</title><link rel="alternate" type="text/html" href="/blogs/chilberto/archive/2008/11/14/first-codeplex-project-wcf-test-harness.aspx" /><id>/blogs/chilberto/archive/2008/11/14/first-codeplex-project-wcf-test-harness.aspx</id><published>2008-11-14T02:26:48Z</published><updated>2008-11-14T02:26:48Z</updated><content type="html">&lt;p&gt;I&amp;#39;ve just published my first CodePlex project: &lt;a href="http://www.codeplex.com/WCFTestHarness" target="_blank"&gt;WCF Test Harness&lt;/a&gt;.&amp;nbsp; This is a testing utility I have been working on for a while now and I thought it could be helpful for others.&lt;/p&gt; &lt;p&gt;I wrote a short &lt;a href="http://bloggingabout.net/blogs/chilberto/pages/wcf-test-harness-overview.aspx"&gt;Overview&lt;/a&gt; and I plan on adding additional information depending on interest.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://bloggingabout.net/aggbug.aspx?PostID=476925" width="1" height="1"&gt;</content><author><name>chilberto</name><uri>http://bloggingabout.net/members/chilberto/default.aspx</uri></author><category term="WCF" scheme="http://bloggingabout.net/blogs/chilberto/archive/tags/WCF/default.aspx" /><category term="Test Harness" scheme="http://bloggingabout.net/blogs/chilberto/archive/tags/Test+Harness/default.aspx" /></entry><entry><title>Windows Azure</title><link rel="alternate" type="text/html" href="/blogs/chilberto/archive/2008/10/28/windows-azure.aspx" /><id>/blogs/chilberto/archive/2008/10/28/windows-azure.aspx</id><published>2008-10-27T17:49:32Z</published><updated>2008-10-27T17:49:32Z</updated><content type="html">&lt;p&gt;At the PDC, Windows Azure was announced as the Microsoft platform for hosting services in the cloud.&amp;nbsp; Similar to &lt;a href="http://aws.amazon.com/"&gt;Amazon&amp;#39;s cloud services&lt;/a&gt;, Windows Azure will provide a mechanism for hosting solutions in the cloud.&amp;nbsp; In other words, hosted in Microsoft data centers.&lt;/p&gt; &lt;p&gt;Very interesting.&amp;nbsp; Looks like a SOA has just gained a new perspective: on-premise services and cloud services.&amp;nbsp; Very powerful, and as it affects me, lots of work coming into the integration space.&amp;nbsp;&amp;nbsp; &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://bloggingabout.net/aggbug.aspx?PostID=476247" width="1" height="1"&gt;</content><author><name>chilberto</name><uri>http://bloggingabout.net/members/chilberto/default.aspx</uri></author><category term="Architecture" scheme="http://bloggingabout.net/blogs/chilberto/archive/tags/Architecture/default.aspx" /><category term="SOA Architecture" scheme="http://bloggingabout.net/blogs/chilberto/archive/tags/SOA+Architecture/default.aspx" /><category term="Azure" scheme="http://bloggingabout.net/blogs/chilberto/archive/tags/Azure/default.aspx" /><category term="PDC2008" scheme="http://bloggingabout.net/blogs/chilberto/archive/tags/PDC2008/default.aspx" /></entry><entry><title>BizTalk: Create Message based on deployed schema</title><link rel="alternate" type="text/html" href="/blogs/chilberto/archive/2008/08/01/biztalk-create-message-based-on-deployed-schema.aspx" /><id>/blogs/chilberto/archive/2008/08/01/biztalk-create-message-based-on-deployed-schema.aspx</id><published>2008-07-31T18:15:00Z</published><updated>2008-07-31T18:15:00Z</updated><content type="html">&lt;p&gt;Here is technique for generating an instance of a BizTalk message (a.k.a, XmlDocument) based on a deployed schema.&amp;nbsp; It requires references to the following assemblies:&lt;/p&gt;
&lt;table cellpadding="2" cellspacing="0"&gt;

&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Assembly&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Location&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Microsoft.BizTalk.Pipeline&lt;/td&gt;
&lt;td&gt;%Program Files%/Microsoft BizTalk Server&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Microsoft.BizTalk.ExplorerOM&lt;/td&gt;
&lt;td&gt;%Program Files%/Microsoft BizTalk Server/Developer Tools&lt;/td&gt;
&lt;/tr&gt;

&lt;/table&gt;
&lt;p&gt;In a class library that has references to the above libraries, create a public class with the following two public methods:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p class="csharpcode"&gt;
&lt;div class="csharpcode"&gt;
&lt;span class="kwrd"&gt;using&lt;/span&gt; System;
&lt;pre&gt;&lt;/pre&gt;
&lt;span class="kwrd"&gt;using&lt;/span&gt; System.Collections.Generic;
&lt;pre&gt;&lt;/pre&gt;
&lt;span class="kwrd"&gt;using&lt;/span&gt; System.Text;
&lt;pre&gt;&lt;/pre&gt;
&lt;span class="kwrd"&gt;using&lt;/span&gt; System.Xml;
&lt;pre&gt;&lt;/pre&gt;
&lt;span class="kwrd"&gt;using&lt;/span&gt; Microsoft.BizTalk.Component.Interop;
&lt;pre&gt;&lt;/pre&gt;
&lt;span class="kwrd"&gt;using&lt;/span&gt; Microsoft.BizTalk.ExplorerOM;
&lt;pre&gt;&lt;/pre&gt;
&amp;nbsp;
&lt;pre&gt;&lt;/pre&gt;
&lt;span class="kwrd"&gt;namespace&lt;/span&gt; Spike.Sandbox
&lt;pre&gt;&lt;/pre&gt;
{
&lt;pre&gt;&lt;/pre&gt;
&lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;class&lt;/span&gt; Utilities
&lt;pre&gt;&lt;/pre&gt;
{
&lt;pre&gt;&lt;/pre&gt;
&lt;span class="rem"&gt;/// &amp;lt;summary&amp;gt;&lt;/span&gt;
&lt;pre&gt;&lt;/pre&gt;
&lt;span class="rem"&gt;/// Build a BizTalk message for a single root node message&lt;/span&gt;
&lt;pre&gt;&lt;/pre&gt;
&lt;span class="rem"&gt;/// &amp;lt;/summary&amp;gt;&lt;/span&gt;
&lt;pre&gt;&lt;/pre&gt;
&lt;span class="rem"&gt;/// &amp;lt;param name=&amp;quot;schemaName&amp;quot;&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;
&lt;pre&gt;&lt;/pre&gt;
&lt;span class="rem"&gt;/// &amp;lt;returns&amp;gt;&amp;lt;/returns&amp;gt;&lt;/span&gt;
&lt;pre&gt;&lt;/pre&gt;
&lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;static&lt;/span&gt; XmlDocument CreateBTSMessage(&lt;span class="kwrd"&gt;string&lt;/span&gt; schemaName)
&lt;pre&gt;&lt;/pre&gt;
{
&lt;pre&gt;&lt;/pre&gt;
&lt;span class="kwrd"&gt;return&lt;/span&gt; CreateMessage(schemaName, schemaName);
&lt;pre&gt;&lt;/pre&gt;
}
&lt;pre&gt;&lt;/pre&gt;
&amp;nbsp;
&lt;pre&gt;&lt;/pre&gt;
&lt;span class="rem"&gt;/// &amp;lt;summary&amp;gt;&lt;/span&gt;
&lt;pre&gt;&lt;/pre&gt;
&lt;span class="rem"&gt;/// Build a BizTalk Message for a multi-root node message&lt;/span&gt;
&lt;pre&gt;&lt;/pre&gt;
&lt;span class="rem"&gt;/// &amp;lt;/summary&amp;gt;&lt;/span&gt;
&lt;pre&gt;&lt;/pre&gt;
&lt;span class="rem"&gt;/// &amp;lt;param name=&amp;quot;schemaName&amp;quot;&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;
&lt;pre&gt;&lt;/pre&gt;
&lt;span class="rem"&gt;/// &amp;lt;param name=&amp;quot;rootNode&amp;quot;&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;
&lt;pre&gt;&lt;/pre&gt;
&lt;span class="rem"&gt;/// &amp;lt;returns&amp;gt;&amp;lt;/returns&amp;gt;&lt;/span&gt;
&lt;pre&gt;&lt;/pre&gt;
&lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;static&lt;/span&gt; XmlDocument CreateBTSMessage(&lt;span class="kwrd"&gt;string&lt;/span&gt; schemaName, &lt;span class="kwrd"&gt;string&lt;/span&gt; rootNode)
&lt;pre&gt;&lt;/pre&gt;
{
&lt;pre&gt;&lt;/pre&gt;
&lt;span class="kwrd"&gt;return&lt;/span&gt; CreateMessage(schemaName, &lt;span class="kwrd"&gt;string&lt;/span&gt;.Format(&lt;span class="str"&gt;&amp;quot;{0}+{1}&amp;quot;&lt;/span&gt;, schemaName, rootNode));
&lt;pre&gt;&lt;/pre&gt;
}
&lt;pre&gt;&lt;/pre&gt;
&lt;/div&gt;

&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;

&lt;/p&gt;
&lt;p&gt;These two methods call a private method that accesses the BizTalk management database to retrieve a deployed schema and construct the message:&lt;/p&gt;
&lt;blockquote&gt;
&lt;div class="csharpcode"&gt;
&lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;static&lt;/span&gt; XmlDocument CreateMessage(&lt;span class="kwrd"&gt;string&lt;/span&gt; schemaName, &lt;span class="kwrd"&gt;string&lt;/span&gt; rootNode)
&lt;pre&gt;&lt;/pre&gt;
{
&lt;pre&gt;&lt;/pre&gt;
XmlDocument doc = &lt;span class="kwrd"&gt;new&lt;/span&gt; XmlDocument();
&lt;pre&gt;&lt;/pre&gt;
DocumentSpec docSpec;
&lt;pre&gt;&lt;/pre&gt;
&amp;nbsp;
&lt;pre&gt;&lt;/pre&gt;
BtsCatalogExplorer catalog = &lt;span class="kwrd"&gt;new&lt;/span&gt; BtsCatalogExplorer();
&lt;pre&gt;&lt;/pre&gt;
catalog.ConnectionString = &lt;span class="str"&gt;&amp;quot;Data Source=myServer;Initial Catalog=BizTalkMgmtDb2;Integrated Security=True&amp;quot;&lt;/span&gt;;
&lt;pre&gt;&lt;/pre&gt;

&lt;pre&gt;&lt;/pre&gt;
Schema schema = catalog.Schemas[schemaName];
&lt;pre&gt;&lt;/pre&gt;

&lt;pre&gt;&lt;/pre&gt;
&lt;span class="kwrd"&gt;if&lt;/span&gt; (schema != &lt;span class="kwrd"&gt;null&lt;/span&gt;)
&lt;pre&gt;&lt;/pre&gt;
{
&lt;pre&gt;&lt;/pre&gt;
docSpec = &lt;span class="kwrd"&gt;new&lt;/span&gt; DocumentSpec(rootNode, schema.BtsAssembly.DisplayName);
&lt;pre&gt;&lt;/pre&gt;

&lt;pre&gt;&lt;/pre&gt;
&lt;span class="kwrd"&gt;if&lt;/span&gt; (docSpec != &lt;span class="kwrd"&gt;null&lt;/span&gt;)
&lt;pre&gt;&lt;/pre&gt;
{
&lt;pre&gt;&lt;/pre&gt;
StringBuilder sb = &lt;span class="kwrd"&gt;new&lt;/span&gt; StringBuilder();
&lt;pre&gt;&lt;/pre&gt;
StringWriter sw = &lt;span class="kwrd"&gt;new&lt;/span&gt; StringWriter(sb);
&lt;pre&gt;&lt;/pre&gt;
&amp;nbsp;
&lt;pre&gt;&lt;/pre&gt;
&lt;span class="kwrd"&gt;try&lt;/span&gt;
&lt;pre&gt;&lt;/pre&gt;
{
&lt;pre&gt;&lt;/pre&gt;
doc.Load(docSpec.CreateXmlInstance(sw));
&lt;pre&gt;&lt;/pre&gt;
}
&lt;pre&gt;&lt;/pre&gt;
&lt;span class="kwrd"&gt;finally&lt;/span&gt;
&lt;pre&gt;&lt;/pre&gt;
{
&lt;pre&gt;&lt;/pre&gt;
sw.Dispose();
&lt;pre&gt;&lt;/pre&gt;
}
&lt;pre&gt;&lt;/pre&gt;
}
&lt;pre&gt;&lt;/pre&gt;
}
&lt;pre&gt;&lt;/pre&gt;
&amp;nbsp;
&lt;pre&gt;&lt;/pre&gt;
&lt;span class="kwrd"&gt;return&lt;/span&gt; doc;
&lt;pre&gt;&lt;/pre&gt;
}
&lt;pre&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;/blockquote&gt;
&lt;p&gt;Cheers to Tomas Restrepo for his insight into the CreateXmlInstance: &lt;a href="http://www.winterdom.com/weblog/2008/07/16/CreateXmlInstanceWithMultiRootSchemas.aspx" title="http://www.winterdom.com/weblog/2008/07/16/CreateXmlInstanceWithMultiRootSchemas.aspx"&gt;http://www.winterdom.com/weblog/2008/07/16/CreateXmlInstanceWithMultiRootSchemas.aspx&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://bloggingabout.net/aggbug.aspx?PostID=470053" width="1" height="1"&gt;</content><author><name>chilberto</name><uri>http://bloggingabout.net/members/chilberto/default.aspx</uri></author><category term="BizTalk" scheme="http://bloggingabout.net/blogs/chilberto/archive/tags/BizTalk/default.aspx" /><category term="Tips" scheme="http://bloggingabout.net/blogs/chilberto/archive/tags/Tips/default.aspx" /></entry><entry><title>Creating shared types with SvcUtil against multiple sources</title><link rel="alternate" type="text/html" href="/blogs/chilberto/archive/2008/08/01/creating-shared-types-with-svcutil-against-multiple-sources.aspx" /><id>/blogs/chilberto/archive/2008/08/01/creating-shared-types-with-svcutil-against-multiple-sources.aspx</id><published>2008-07-31T17:07:00Z</published><updated>2008-07-31T17:07:00Z</updated><content type="html">&lt;p&gt;One of the teams I am working with ran into an issue when generating shared types via SvcUtil.&amp;nbsp; The issue was SvcUtil was generating multiple types (e.g., classes, enums) in the proxy .cs file.&amp;nbsp; After a google search, I found this was being experienced by others:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=745657&amp;amp;SiteID=1" title="http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=745657&amp;amp;SiteID=1"&gt;http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=745657&amp;amp;SiteID=1&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=1392697&amp;amp;SiteID=1" title="http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=1392697&amp;amp;SiteID=1"&gt;http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=1392697&amp;amp;SiteID=1&lt;/a&gt;&lt;/p&gt;
&lt;h1&gt;&lt;/h1&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;An example of the duplicate types:&lt;/p&gt;
&lt;span id="_ctl0_MainContent_PostFlatView"&gt;
&lt;div style="float:left;width:100%;padding-top:5px;height:auto;"&gt;
&lt;table align="center"&gt;

&lt;tr&gt;
&lt;td&gt;
&lt;div style="padding-right:12px;padding-left:12px;padding-bottom:12px;width:100%;"&gt;
&lt;table cellpadding="0" cellspacing="0"&gt;

&lt;tr&gt;
&lt;td&gt;
&lt;table cellpadding="0" cellspacing="0" class="tableBorder"&gt;

&lt;tr&gt;
&lt;td colspan="2"&gt;
&lt;table align="left" cellpadding="0" cellspacing="0"&gt;

&lt;tr&gt;
&lt;td class="fh3a"&gt;
&lt;table align="left" cellpadding="0" cellspacing="2"&gt;

&lt;tr&gt;
&lt;td colspan="3" style="padding-top:4px;" class="txt4t"&gt;
&lt;table align="left" cellpadding="0" cellspacing="0"&gt;

&lt;tr&gt;
&lt;td style="word-wrap:break-word;" class="txt4lt"&gt;&lt;span&gt;&lt;span style="font-size:x-small;"&gt;&lt;font size="2"&gt;
&lt;p&gt;[System.CodeDom.Compiler.&lt;/p&gt;
&lt;/font&gt;&lt;/span&gt;
&lt;p&gt;&lt;span style="font-size:x-small;color:#008080;"&gt;GeneratedCodeAttribute&lt;/span&gt;&lt;span style="font-size:x-small;"&gt;(&lt;/span&gt;&lt;span style="font-size:x-small;color:#800000;"&gt;&amp;quot;svcutil&amp;quot;&lt;/span&gt;&lt;span style="font-size:x-small;"&gt;, &lt;/span&gt;&lt;span style="font-size:x-small;color:#800000;"&gt;&amp;quot;3.0.3906.22&amp;quot;&lt;/span&gt;&lt;span style="font-size:x-small;"&gt;)]&lt;font size="2"&gt;
&lt;p&gt;[System.&lt;/p&gt;
&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:x-small;color:#008080;"&gt;SerializableAttribute&lt;/span&gt;&lt;span style="font-size:x-small;"&gt;()]&lt;font size="2"&gt;
&lt;p&gt;[System.Xml.Serialization.&lt;/p&gt;
&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:x-small;color:#008080;"&gt;XmlTypeAttribute&lt;/span&gt;&lt;span style="font-size:x-small;"&gt;(Namespace=&lt;/span&gt;&lt;span style="font-size:x-small;color:#800000;"&gt;&amp;quot;http://schemas.datacontract.org/2004/07/LR.Model.Enums&amp;quot;&lt;/span&gt;&lt;span style="font-size:x-small;"&gt;)]&lt;font size="2"&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:x-small;color:#0000ff;"&gt;public&lt;/span&gt;&lt;span style="font-size:x-small;"&gt; &lt;/span&gt;&lt;span style="font-size:x-small;color:#0000ff;"&gt;enum&lt;/span&gt;&lt;span style="font-size:x-small;"&gt; &lt;/span&gt;&lt;span style="font-size:x-small;color:#008080;"&gt;ReturnStatusEnum&lt;/span&gt;&lt;/p&gt;
&lt;span style="font-size:x-small;"&gt;
&lt;p&gt;{&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;font size="2"&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/font&gt;&lt;/span&gt;
&lt;p&gt;&lt;span style="font-size:x-small;color:#808080;"&gt;///&lt;/span&gt;&lt;span style="font-size:x-small;color:#008000;"&gt; &lt;/span&gt;&lt;span style="font-size:x-small;color:#808080;"&gt;&amp;lt;remarks/&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;span style="font-size:x-small;"&gt;
&lt;p&gt;None,&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;font size="2"&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/font&gt;&lt;/span&gt;
&lt;p&gt;&lt;span style="font-size:x-small;color:#808080;"&gt;///&lt;/span&gt;&lt;span style="font-size:x-small;color:#008000;"&gt; &lt;/span&gt;&lt;span style="font-size:x-small;color:#808080;"&gt;&amp;lt;remarks/&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;span style="font-size:x-small;"&gt;
&lt;p&gt;BadLogonOrPassword,&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;font size="2"&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/font&gt;&lt;/span&gt;
&lt;p&gt;&lt;span style="font-size:x-small;color:#808080;"&gt;///&lt;/span&gt;&lt;span style="font-size:x-small;color:#008000;"&gt; &lt;/span&gt;&lt;span style="font-size:x-small;color:#808080;"&gt;&amp;lt;remarks/&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;span style="font-size:x-small;"&gt;
&lt;p&gt;Successful,&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;font size="2"&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/font&gt;&lt;/span&gt;
&lt;p&gt;&lt;span style="font-size:x-small;"&gt;}
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;span style="font-size:x-small;"&gt;&lt;font size="2"&gt;
&lt;p&gt;[System.CodeDom.Compiler.&lt;/p&gt;
&lt;/font&gt;&lt;/span&gt;
&lt;p&gt;&lt;span style="font-size:x-small;color:#008080;"&gt;GeneratedCodeAttribute&lt;/span&gt;&lt;span style="font-size:x-small;"&gt;(&lt;/span&gt;&lt;span style="font-size:x-small;color:#800000;"&gt;&amp;quot;System.Runtime.Serialization&amp;quot;&lt;/span&gt;&lt;span style="font-size:x-small;"&gt;, &lt;/span&gt;&lt;span style="font-size:x-small;color:#800000;"&gt;&amp;quot;3.0.0.0&amp;quot;&lt;/span&gt;&lt;span style="font-size:x-small;"&gt;)]&lt;font size="2"&gt;
&lt;p&gt;[System.Runtime.Serialization.&lt;/p&gt;
&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:x-small;color:#008080;"&gt;DataContractAttribute&lt;/span&gt;&lt;span style="font-size:x-small;"&gt;(Namespace=&lt;/span&gt;&lt;span style="font-size:x-small;color:#800000;"&gt;&amp;quot;http://schemas.datacontract.org/2004/07/LR.Model.Enums&amp;quot;&lt;/span&gt;&lt;span style="font-size:x-small;"&gt;)]&lt;font size="2"&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:x-small;color:#0000ff;"&gt;public&lt;/span&gt;&lt;span style="font-size:x-small;"&gt; &lt;/span&gt;&lt;span style="font-size:x-small;color:#0000ff;"&gt;enum&lt;/span&gt;&lt;span style="font-size:x-small;"&gt; &lt;/span&gt;&lt;span style="font-size:x-small;color:#008080;"&gt;ReturnStatusEnum&lt;/span&gt;&lt;span style="font-size:x-small;"&gt; : &lt;/span&gt;&lt;span style="font-size:x-small;color:#0000ff;"&gt;int&lt;/span&gt;&lt;/p&gt;
&lt;span style="font-size:x-small;"&gt;
&lt;p&gt;{&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;font size="2"&gt;
&lt;p&gt;[System.Runtime.Serialization.&lt;/p&gt;
&lt;/font&gt;&lt;/span&gt;
&lt;p&gt;&lt;span style="font-size:x-small;color:#008080;"&gt;EnumMemberAttribute&lt;/span&gt;&lt;span style="font-size:x-small;"&gt;()]
&lt;p&gt;None = -1,&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;font size="2"&gt;
&lt;p&gt;[System.Runtime.Serialization.&lt;/p&gt;
&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:x-small;color:#008080;"&gt;EnumMemberAttribute&lt;/span&gt;&lt;span style="font-size:x-small;"&gt;()]
&lt;p&gt;BadLogonOrPassword = 0,&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;font size="2"&gt;
&lt;p&gt;[System.Runtime.Serialization.&lt;/p&gt;
&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:x-small;color:#008080;"&gt;EnumMemberAttribute&lt;/span&gt;&lt;span style="font-size:x-small;"&gt;()]
&lt;p&gt;Successful = 1,&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/span&gt;&lt;/p&gt;
&lt;span style="font-size:x-small;"&gt;
&lt;p&gt;}&lt;/p&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;

&lt;/table&gt;
&lt;/td&gt;
&lt;/tr&gt;

&lt;/table&gt;
&lt;/td&gt;
&lt;/tr&gt;

&lt;/table&gt;
&lt;/td&gt;
&lt;/tr&gt;

&lt;/table&gt;
&lt;/td&gt;
&lt;/tr&gt;

&lt;/table&gt;
&lt;/div&gt;
&lt;/td&gt;
&lt;/tr&gt;

&lt;/table&gt;
&lt;p&gt;The solution is simply including a switch to SvcUtil to force the serializer to be a specific type.&amp;nbsp; The default is Auto so in the example above, the SvcUtil decided to use the XmlSerializer for one class and the DataContractSerializer for another.&lt;/p&gt;
&lt;p&gt;An example of the syntax: svcutil /ns:*,my.namespace /serializer:XmlSerializer service1.svc&amp;nbsp; service2.svc service3.asmx&lt;/p&gt;
&lt;p&gt;Hope this saves someone some time!&lt;/p&gt;
&lt;/div&gt;
&lt;/span&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://bloggingabout.net/aggbug.aspx?PostID=470049" width="1" height="1"&gt;</content><author><name>chilberto</name><uri>http://bloggingabout.net/members/chilberto/default.aspx</uri></author><category term="Error" scheme="http://bloggingabout.net/blogs/chilberto/archive/tags/Error/default.aspx" /><category term="WCF" scheme="http://bloggingabout.net/blogs/chilberto/archive/tags/WCF/default.aspx" /></entry><entry><title>BizTalk Namespace Issue</title><link rel="alternate" type="text/html" href="/blogs/chilberto/archive/2008/07/11/biztalk-namespace-issue.aspx" /><id>/blogs/chilberto/archive/2008/07/11/biztalk-namespace-issue.aspx</id><published>2008-07-11T04:31:20Z</published><updated>2008-07-11T04:31:20Z</updated><content type="html">&lt;p&gt;Here is a little gem that I have come across recently...&amp;nbsp; I have only confirmed this in BizTalk 2006 R2.&lt;/p&gt; &lt;p&gt;If you create a receive shape with a filter expression of &lt;em&gt;(BTS.Operation==&amp;quot;somevalue&amp;quot;)&lt;/em&gt; and your namespace contains &lt;em&gt;BTS.&lt;/em&gt; then you will get a build failure similar to:&lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;&lt;font color="#ff0000"&gt;The type or namespace name &amp;#39;Operation&amp;#39; does not exist in the namespace &amp;#39;Spike.BTS&amp;#39; (are you missing an assembly reference?)&lt;/font&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;It appears that during compilation it is trying to resolve the &lt;em&gt;BTS.Operation&lt;/em&gt; in the project assembly.&amp;nbsp; I was surprised by this one and have created several projects in the past with &lt;em&gt;BTS. &lt;/em&gt;in the namespace without encountering an issue.&lt;/p&gt; &lt;p&gt;To illustrate, I created a project named &lt;em&gt;Spike.BTS.WeirdSubscriptionIssue&lt;/em&gt;&lt;/p&gt; &lt;p&gt;&lt;a href="http://bloggingabout.net/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/chilberto/image_5F00_6.png"&gt;&lt;img style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" height="221" alt="image" src="http://bloggingabout.net/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/chilberto/image_5F00_thumb_5F00_2.png" width="473" border="0" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;If a receive shape is created with a filter expression referencing any BTS.* class, you will not be able to compile.&amp;nbsp; &lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;a href="http://bloggingabout.net/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/chilberto/image_5F00_2.png"&gt;&lt;img style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" height="131" alt="image" src="http://bloggingabout.net/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/chilberto/image_5F00_thumb.png" width="592" border="0" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Where &lt;/p&gt; &lt;p&gt;&lt;a href="http://bloggingabout.net/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/chilberto/image_5F00_4.png"&gt;&lt;img style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" height="198" alt="image" src="http://bloggingabout.net/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/chilberto/image_5F00_thumb_5F00_1.png" width="594" border="0" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Strange...&lt;/p&gt; &lt;p&gt;Anyone else encountered this before?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://bloggingabout.net/aggbug.aspx?PostID=464815" width="1" height="1"&gt;</content><author><name>chilberto</name><uri>http://bloggingabout.net/members/chilberto/default.aspx</uri></author><category term="Error" scheme="http://bloggingabout.net/blogs/chilberto/archive/tags/Error/default.aspx" /><category term="Visual Studio 2005" scheme="http://bloggingabout.net/blogs/chilberto/archive/tags/Visual+Studio+2005/default.aspx" /><category term="BizTalk" scheme="http://bloggingabout.net/blogs/chilberto/archive/tags/BizTalk/default.aspx" /></entry><entry><title>BizTalk Msi Export: Customisation</title><link rel="alternate" type="text/html" href="/blogs/chilberto/archive/2008/06/24/biztalk-msi-export-customisation.aspx" /><id>/blogs/chilberto/archive/2008/06/24/biztalk-msi-export-customisation.aspx</id><published>2008-06-24T03:22:07Z</published><updated>2008-06-24T03:22:07Z</updated><content type="html">&lt;p&gt;Here are some notes on customising exports created via the BizTalk Administration Export MSI file.&lt;/p&gt; &lt;p&gt;&lt;a href="http://bloggingabout.net/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/chilberto/image_5F00_2.png"&gt;&lt;img style="border-top-width:0px;border-left-width:0px;border-bottom-width:0px;border-right-width:0px;" height="287" alt="image" src="http://bloggingabout.net/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/chilberto/image_5F00_thumb.png" width="310" border="0" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Before creating the export, add any externally referenced .Net assemblies by adding them as a resource in the BizTalk Application&amp;#39;s Resources folder:&lt;/p&gt; &lt;p&gt;&lt;a href="http://bloggingabout.net/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/chilberto/image9.png"&gt;&lt;img style="border-top-width:0px;border-left-width:0px;border-bottom-width:0px;border-right-width:0px;" height="117" alt="image" src="http://bloggingabout.net/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/chilberto/image9_5F00_thumb.png" width="275" border="0" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;This will allow you to include the added resources in your export and will add them to the Global Assembly Cache during installation.&lt;/p&gt; &lt;p&gt;&lt;a href="http://bloggingabout.net/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/chilberto/image12.png"&gt;&lt;img style="border-top-width:0px;border-left-width:0px;border-bottom-width:0px;border-right-width:0px;" height="375" alt="image" src="http://bloggingabout.net/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/chilberto/image12_5F00_thumb.png" width="335" border="0" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;This is also a good means of deploying binding files for different environments.&lt;/p&gt; &lt;p&gt;Also, verify the Destination Location of all resources are set to install in the deployment folder.&amp;nbsp; The following assembly &lt;/p&gt; &lt;p&gt;&lt;a href="http://bloggingabout.net/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/chilberto/image6.png"&gt;&lt;img style="border-top-width:0px;border-left-width:0px;border-bottom-width:0px;border-right-width:0px;" height="77" alt="image" src="http://bloggingabout.net/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/chilberto/image6_5F00_thumb.png" width="536" border="0" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Should be modified so it will install in the installation folder:&lt;/p&gt; &lt;p&gt;&lt;a href="http://bloggingabout.net/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/chilberto/image_5F00_12.png"&gt;&lt;img style="border-top-width:0px;border-left-width:0px;border-bottom-width:0px;border-right-width:0px;" height="73" alt="image" src="http://bloggingabout.net/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/chilberto/image_5F00_thumb_5F00_1.png" width="539" border="0" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;A tool like Orca (available in vista SDK) can be used to modify the default deployment folder by changing the manufacturer property.&amp;nbsp; The screen below shows the property to be modified:&lt;/p&gt; &lt;p&gt;&lt;a href="http://bloggingabout.net/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/chilberto/image_5F00_14.png"&gt;&lt;img style="border-top-width:0px;border-left-width:0px;border-bottom-width:0px;border-right-width:0px;" height="33" alt="image" src="http://bloggingabout.net/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/chilberto/image_5F00_thumb_5F00_5.png" width="540" border="0" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Just some notes...&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://bloggingabout.net/aggbug.aspx?PostID=461182" width="1" height="1"&gt;</content><author><name>chilberto</name><uri>http://bloggingabout.net/members/chilberto/default.aspx</uri></author><category term="BizTalk" scheme="http://bloggingabout.net/blogs/chilberto/archive/tags/BizTalk/default.aspx" /></entry><entry><title>Sharepoint Lists.asmx UpdateListItems: Root Folder</title><link rel="alternate" type="text/html" href="/blogs/chilberto/archive/2008/03/14/sharepoint-lists-asmx-updatelistitems-root-folder.aspx" /><id>/blogs/chilberto/archive/2008/03/14/sharepoint-lists-asmx-updatelistitems-root-folder.aspx</id><published>2008-03-13T22:53:00Z</published><updated>2008-03-13T22:53:00Z</updated><content type="html">&lt;p&gt;The RootFolder attribute on the Batch element controls the folder of the item. This can be used to access a sub-folder. The structure is Lists/&lt;em&gt;list/folder &lt;/em&gt;where folder is optional. 
&lt;p&gt;For example, if the list being updated is Contacts and there are two sub-folders Work and Personal. To update an item in the Contacts list: 
&lt;p&gt;&amp;lt;Batch OnError=&amp;quot;Continue&amp;quot; PreCalc=&amp;quot;TRUE&amp;quot; ListVersion=&amp;quot;0&amp;quot; &lt;strong&gt;RootFolder=&amp;quot;/Lists/Contacts&amp;quot;&lt;/strong&gt;&amp;gt;&lt;br /&gt;&amp;lt;Method ID=&amp;quot;1&amp;quot; Cmd=&amp;quot;Update&amp;quot;&amp;gt;&lt;br /&gt;&amp;lt;Field Name=&amp;quot;ID&amp;quot;&amp;gt;47821&amp;lt;/Field&amp;gt;&lt;br /&gt;&amp;lt;Field Name=&amp;quot;RefID&amp;quot;&amp;gt;479485&amp;lt;/Field&amp;gt;&lt;br /&gt;&amp;lt;Field Name=&amp;quot;CustomerNumber&amp;quot;&amp;gt;59613&amp;lt;/Field&amp;gt;&lt;br /&gt;&amp;lt;/Batch&amp;gt; 
&lt;p&gt;And to update an item in the Work folder: 
&lt;p&gt;&amp;lt;Batch OnError=&amp;quot;Continue&amp;quot; PreCalc=&amp;quot;TRUE&amp;quot; ListVersion=&amp;quot;0&amp;quot; &lt;strong&gt;RootFolder=&amp;quot;/Lists/Contacts/Work&amp;quot;&lt;/strong&gt;&amp;gt;&lt;br /&gt;&amp;lt;Method ID=&amp;quot;1&amp;quot; Cmd=&amp;quot;Update&amp;quot;&amp;gt;&lt;br /&gt;&amp;lt;Field Name=&amp;quot;ID&amp;quot;&amp;gt;47821&amp;lt;/Field&amp;gt;&lt;br /&gt;&amp;lt;Field Name=&amp;quot;RefID&amp;quot;&amp;gt;479485&amp;lt;/Field&amp;gt;&lt;br /&gt;&amp;lt;Field Name=&amp;quot;CustomerNumber&amp;quot;&amp;gt;59613&amp;lt;/Field&amp;gt;&lt;br /&gt;&amp;lt;/Batch&amp;gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://bloggingabout.net/aggbug.aspx?PostID=458045" width="1" height="1"&gt;</content><author><name>chilberto</name><uri>http://bloggingabout.net/members/chilberto/default.aspx</uri></author><category term="Sharepoint" scheme="http://bloggingabout.net/blogs/chilberto/archive/tags/Sharepoint/default.aspx" /></entry><entry><title>Sharepoint WSS 3.0: Lists.asmx Error Codes</title><link rel="alternate" type="text/html" href="/blogs/chilberto/archive/2008/03/06/sharepoint-wss-3-0-lists-asmx-error-codes.aspx" /><id>/blogs/chilberto/archive/2008/03/06/sharepoint-wss-3-0-lists-asmx-error-codes.aspx</id><published>2008-03-06T02:01:27Z</published><updated>2008-03-06T02:01:27Z</updated><content type="html">&lt;p&gt;Just some notes relating to error codes received during Sharepoint integration using the UpdateListItems method of the&amp;nbsp; lists.asmx service.&lt;/p&gt; &lt;p&gt;A value in the update for a column exceeded the maximum column size.&lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;&amp;lt;ErrorCode xmlns=&amp;quot;&lt;a href="http://schemas.microsoft.com/sharepoint/soap/&amp;quot;"&gt;http://schemas.microsoft.com/sharepoint/soap/&amp;quot;&lt;/a&gt;&amp;gt;0x81020018&amp;lt;/ErrorCode&amp;gt;&lt;br /&gt;&amp;lt;ErrorText xmlns=&amp;quot;&lt;a href="http://schemas.microsoft.com/sharepoint/soap/&amp;quot;"&gt;http://schemas.microsoft.com/sharepoint/soap/&amp;quot;&lt;/a&gt;&amp;gt;Invalid text value &lt;/p&gt; &lt;p&gt;A text field contains invalid data. Please check the value and try again.&amp;lt;/ErrorText&amp;gt;&lt;br /&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;A column to be updated was passed in that did not exist. &lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;&amp;lt;ErrorCode xmlns=&amp;quot;&lt;a href="http://schemas.microsoft.com/sharepoint/soap/&amp;quot;"&gt;http://schemas.microsoft.com/sharepoint/soap/&amp;quot;&lt;/a&gt;&amp;gt;0x81020014&amp;lt;/ErrorCode&amp;gt;&lt;br /&gt;&amp;lt;ErrorText xmlns=&amp;quot;&lt;a href="http://schemas.microsoft.com/sharepoint/soap/&amp;quot;"&gt;http://schemas.microsoft.com/sharepoint/soap/&amp;quot;&lt;/a&gt;&amp;gt;One or more field types are not installed properly. Go to the list settings page to delete these fields.&amp;lt;/ErrorText&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;/Result&amp;gt;&lt;br /&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;The field being updated was a lookup field that allows multiple values and the value passed in contained a trailing &amp;quot;;&amp;quot;.&amp;nbsp; A trailing semi-colon only seems to be an issue when it is the first item in the list.&lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;&amp;lt;!-- &amp;lt;Field Name=&amp;quot;VehicleFeatures&amp;quot;&amp;gt;1,#Cassette Radio;&amp;lt;/Field&amp;gt; --&amp;gt;&lt;br /&gt;&amp;lt;ErrorCode xmlns=&amp;quot;&lt;a href="http://schemas.microsoft.com/sharepoint/soap/&amp;quot;"&gt;http://schemas.microsoft.com/sharepoint/soap/&amp;quot;&lt;/a&gt;&amp;gt;0x80070057&amp;lt;/ErrorCode&amp;gt;&lt;br /&gt;&amp;lt;ErrorText xmlns=&amp;quot;&lt;a href="http://schemas.microsoft.com/sharepoint/soap/&amp;quot;"&gt;http://schemas.microsoft.com/sharepoint/soap/&amp;quot;&lt;/a&gt;&amp;gt;Bad parameter passed to Web Server Extensions.&amp;nbsp; Check the information you entered and try again.&amp;lt;/ErrorText&amp;gt;&lt;br /&gt;&amp;lt;/Result&amp;gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://bloggingabout.net/aggbug.aspx?PostID=458007" width="1" height="1"&gt;</content><author><name>chilberto</name><uri>http://bloggingabout.net/members/chilberto/default.aspx</uri></author></entry><entry><title>BizTalk Map: Choice Element</title><link rel="alternate" type="text/html" href="/blogs/chilberto/archive/2008/02/28/biztalk-map-choice-element.aspx" /><id>/blogs/chilberto/archive/2008/02/28/biztalk-map-choice-element.aspx</id><published>2008-02-27T21:01:03Z</published><updated>2008-02-27T21:01:03Z</updated><content type="html">&lt;p&gt;In my schema file, I have a choice element that only contains a single child element.&amp;nbsp; For example:&lt;/p&gt; &lt;p&gt;&lt;a href="http://bloggingabout.net/blogs/chilberto/WindowsLiveWriter/BizTalkMapChoiceElement_8D00/image_2.png"&gt;&lt;img style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" height="194" alt="image" src="http://bloggingabout.net/blogs/chilberto/WindowsLiveWriter/BizTalkMapChoiceElement_8D00/image_thumb.png" width="375" border="0" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;The above example is actually a crude schema of the where clause of a Sharepoint call to Lists.asmx where in the case I have only 1 item, I want to send a where clause of &lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;&amp;lt;Where&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;Eq&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;FieldRef Name=&amp;quot;ItemID&amp;quot;/&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Value Type=&amp;quot;Text&amp;quot;&amp;gt;99900&amp;lt;/Value&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;/Eq&amp;gt;&lt;br /&gt;&amp;lt;/Where&amp;gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;And in the case that I have multiple items, I want to send something like:&lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;&amp;lt;Where&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;Or&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Eq&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;FieldRef Name=&amp;quot;ItemID&amp;quot; /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Value Type=&amp;quot;Text&amp;quot;&amp;gt;3394&amp;lt;/Value&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/Eq&amp;gt;&lt;br /&gt;...&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Eq&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;FieldRef Name=&amp;quot;ItemID&amp;quot; /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Value Type=&amp;quot;Text&amp;quot;&amp;gt;9867&amp;lt;/Value&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/Eq&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;/Or&amp;gt;&lt;br /&gt;&amp;lt;/Where&amp;gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;In my map, it is a simple operation of using &lt;/p&gt; &lt;ul&gt; &lt;li&gt;A &lt;em&gt;Record Count&lt;/em&gt; functoid to receive a count of the number of items&lt;/li&gt; &lt;li&gt;A &lt;em&gt;Greater Than&lt;/em&gt; functoid to compare the result of the count of items against 1&lt;/li&gt; &lt;li&gt;A &lt;em&gt;Equal To &lt;/em&gt;functoid to compare the result of the count of items against 1&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;The map is then composed by connecting the items record in the source document to the &lt;em&gt;Record Count&lt;/em&gt; functoid, the result of the &lt;em&gt;Greater Than&lt;/em&gt; functoid to the Or choice element, and the result of the &lt;em&gt;Equal To&lt;/em&gt; functoid to the Eq choice element.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://bloggingabout.net/aggbug.aspx?PostID=457960" width="1" height="1"&gt;</content><author><name>chilberto</name><uri>http://bloggingabout.net/members/chilberto/default.aspx</uri></author><category term="BizTalk" scheme="http://bloggingabout.net/blogs/chilberto/archive/tags/BizTalk/default.aspx" /><category term="Sharepoint" scheme="http://bloggingabout.net/blogs/chilberto/archive/tags/Sharepoint/default.aspx" /></entry><entry><title>Sharepoint WSS: 0x81020014 Error Code</title><link rel="alternate" type="text/html" href="/blogs/chilberto/archive/2008/02/27/sharepoint-wss-0x81020014-error-code.aspx" /><id>/blogs/chilberto/archive/2008/02/27/sharepoint-wss-0x81020014-error-code.aspx</id><published>2008-02-26T19:52:00Z</published><updated>2008-02-26T19:52:00Z</updated><content type="html">&lt;p&gt;When updating (new and update)&amp;nbsp;list items to the Lists.asmx sharepoint service, I received the following error: 0x81020014 &lt;em&gt;One or more field types are not installed properly. Go to the list settings page to delete these fields.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;The resolution of the error was actually the opposite of the helpful suggestion: simply I did not have all the columns defined in my view for the item being updated.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://bloggingabout.net/aggbug.aspx?PostID=457954" width="1" height="1"&gt;</content><author><name>chilberto</name><uri>http://bloggingabout.net/members/chilberto/default.aspx</uri></author><category term="Error" scheme="http://bloggingabout.net/blogs/chilberto/archive/tags/Error/default.aspx" /><category term="Sharepoint" scheme="http://bloggingabout.net/blogs/chilberto/archive/tags/Sharepoint/default.aspx" /></entry><entry><title>Where, oh where has my Sharepoint feature gone...</title><link rel="alternate" type="text/html" href="/blogs/chilberto/archive/2008/02/21/where-oh-where-has-my-sharepoint-feature-gone.aspx" /><id>/blogs/chilberto/archive/2008/02/21/where-oh-where-has-my-sharepoint-feature-gone.aspx</id><published>2008-02-21T01:01:30Z</published><updated>2008-02-21T01:01:30Z</updated><content type="html">&lt;p&gt;Yes, another newbie to Sharepoint post; but it may help the others out there who are working through labs and exercises and not getting the &amp;quot;expected&amp;quot; results.&lt;/p&gt; &lt;p&gt;If after you have deployed your new feature (e.g., workflow, web part, etc) you do not have it listed as an available content type, it might have been added successfully but not activated.&amp;nbsp; &lt;/p&gt; &lt;p&gt;To activate a feature go to the Site Settings:&lt;/p&gt; &lt;p&gt;&lt;a href="http://bloggingabout.net/blogs/chilberto/WindowsLiveWriter/WhereohwherehasmySharepointfeaturegone_C3FB/image_2.png"&gt;&lt;img style="border-top-width:0px;border-left-width:0px;border-bottom-width:0px;border-right-width:0px;" height="103" alt="image" src="http://bloggingabout.net/blogs/chilberto/WindowsLiveWriter/WhereohwherehasmySharepointfeaturegone_C3FB/image_thumb.png" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Select &lt;em&gt;Site collection features&lt;/em&gt; option from the &lt;em&gt;Site Collection Administration&lt;/em&gt; section.&lt;/p&gt; &lt;p&gt;&lt;a href="http://bloggingabout.net/blogs/chilberto/WindowsLiveWriter/WhereohwherehasmySharepointfeaturegone_C3FB/image_4.png"&gt;&lt;img style="border-top-width:0px;border-left-width:0px;border-bottom-width:0px;border-right-width:0px;" height="242" alt="image" src="http://bloggingabout.net/blogs/chilberto/WindowsLiveWriter/WhereohwherehasmySharepointfeaturegone_C3FB/image_thumb_1.png" width="208" border="0" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;A list of loaded features is presented with the option of activating and deactivating. &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://bloggingabout.net/aggbug.aspx?PostID=457923" width="1" height="1"&gt;</content><author><name>chilberto</name><uri>http://bloggingabout.net/members/chilberto/default.aspx</uri></author><category term="Sharepoint" scheme="http://bloggingabout.net/blogs/chilberto/archive/tags/Sharepoint/default.aspx" /></entry><entry><title>BAM Tip: Visual Studio External Tools</title><link rel="alternate" type="text/html" href="/blogs/chilberto/archive/2008/02/20/bam-tip-visual-studio-external-tools.aspx" /><id>/blogs/chilberto/archive/2008/02/20/bam-tip-visual-studio-external-tools.aspx</id><published>2008-02-19T22:32:46Z</published><updated>2008-02-19T22:32:46Z</updated><content type="html">&lt;p&gt;Here is a simple way to open a command window from within Visual Studio that is aware of the BizTalk Management Utility (bm.exe).&amp;nbsp; I have found this useful while working with interceptor configuration files.&amp;nbsp; This tip will add the Visual Studio Command Prompt to the Tools menu.&amp;nbsp; &lt;p&gt;Nothing too dramatic here, just a time saver when defining interceptor configuration files from within Visual Studio without adding shortcuts on my desktop or quick launch bar. &lt;h5&gt;Add Visual Studio Command Prompt to External Tools&lt;/h5&gt; &lt;p&gt;Simply select the External Tools option off of the Tools menu.&amp;nbsp; To keep thing simple, I basically duplicated the Visual Studio Command prompt settings by viewing its properties.&amp;nbsp; &lt;p&gt;&lt;a href="http://bloggingabout.net/blogs/chilberto/WindowsLiveWriter/BAMTipVisualStudioExternalTools_9452/image_2.png"&gt;&lt;img style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" height="241" alt="image" src="http://bloggingabout.net/blogs/chilberto/WindowsLiveWriter/BAMTipVisualStudioExternalTools_9452/image_thumb.png" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;h5&gt;Modify Visual Studio Command Prompt&amp;#39;s PATH&lt;/h5&gt; &lt;p&gt;Depending on the operating system you are running Visual Studio on, the following will be different.&amp;nbsp; To determine where to modify, open the file indicated in the command arguments.&amp;nbsp; For me it was: &lt;em&gt;C:\Program Files\Microsoft Visual Studio 8\VC\vcvarsall.bat&lt;/em&gt;.&lt;/p&gt; &lt;p&gt;In the file you will see a supplied parameter, e.g., &lt;em&gt;x86&lt;/em&gt;, indicates were the settings are located for the specific operating system.&amp;nbsp; Note that %~dp0 indicates the where the batch file was run from.&amp;nbsp; For me it was: &lt;em&gt;C:\Program Files\Microsoft Visual Studio 8\VC\bin\vcvars32.bat&lt;/em&gt;.&lt;/p&gt; &lt;p&gt;This file just pointed to another file &lt;em&gt;C:\Program Files\Microsoft Visual Studio 8\Common7\Tools\vsvars32.bat&lt;/em&gt;. In this file is where the environment settings are stored.&amp;nbsp; I modified the file to include the location of bm.exe as part of the PATH environment variable.&amp;nbsp; The following line was inserted after the current @set PATH line:&lt;/p&gt; &lt;p&gt;&lt;em&gt;&lt;strong&gt;@set PATH=C:\Program Files\Microsoft BizTalk Server 2006\Tracking;%PATH%&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://bloggingabout.net/aggbug.aspx?PostID=457915" width="1" height="1"&gt;</content><author><name>chilberto</name><uri>http://bloggingabout.net/members/chilberto/default.aspx</uri></author><category term="Visual Studio 2005" scheme="http://bloggingabout.net/blogs/chilberto/archive/tags/Visual+Studio+2005/default.aspx" /><category term="BAM" scheme="http://bloggingabout.net/blogs/chilberto/archive/tags/BAM/default.aspx" /><category term="BizTalk" scheme="http://bloggingabout.net/blogs/chilberto/archive/tags/BizTalk/default.aspx" /></entry><entry><title>WSS 3.0: Getting Started with WebParts</title><link rel="alternate" type="text/html" href="/blogs/chilberto/archive/2008/02/19/wss-3-0-getting-started-with-webparts.aspx" /><id>/blogs/chilberto/archive/2008/02/19/wss-3-0-getting-started-with-webparts.aspx</id><published>2008-02-19T00:20:00Z</published><updated>2008-02-19T00:20:00Z</updated><content type="html">&lt;p&gt;The following are some notes on getting the &lt;strong&gt;Creating a Windows SharePoint Services 3.0 Web Part Using Visual Studio 2005 Extensions &lt;/strong&gt;of the SDK to work.&lt;strong&gt;&amp;nbsp;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;No SharePoint Site exists at the specified URL&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;In the Visual Studio Project Properties, the Debug section contains a setting: &lt;em&gt;Start browser with URL&lt;/em&gt;&lt;strong&gt;.&lt;/strong&gt;&amp;nbsp; This needs to reference the sharepoint site.&amp;nbsp; For instance if your sharepoint site is on the Euclid box at port 8080, then it will need to be set to &lt;a href="http://euclid:8080/"&gt;http://Euclid:8080/&lt;/a&gt;.&amp;nbsp; &lt;/p&gt;
&lt;p&gt;Otherwise the error will be reported durnig deployment as: No SharePoint Site exists at the specified URL.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Enabling ASP.Net Debugging&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The debug attribute&amp;nbsp;for compilation needs to be set to true in order for&amp;nbsp;debugging of the web parts from within Visual Studio.&amp;nbsp; If the option is not set, the deploy will succeed but a&amp;nbsp;browser will not be launched&amp;nbsp;and attached to Visual Studio.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;lt;compilation batch=&amp;quot;false&amp;quot; debug=&amp;quot;true&amp;quot;&amp;gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Web Part not showing in Miscellaneous section&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;If after you have deployed to your Sharepoint Site and you are not able to add the newly deployed web part, make sure you have deployed it to the correct site.&amp;nbsp; In my case, I was not able to view it in the Miscellaneous section.&amp;nbsp; Fortunately I found a helpful post: &lt;a href="http://www.developer.com/net/asp/article.php/10917_3620316_1"&gt;http://www.developer.com/net/asp/article.php/10917_3620316_1&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://bloggingabout.net/aggbug.aspx?PostID=457907" width="1" height="1"&gt;</content><author><name>chilberto</name><uri>http://bloggingabout.net/members/chilberto/default.aspx</uri></author><category term="Visual Studio 2005" scheme="http://bloggingabout.net/blogs/chilberto/archive/tags/Visual+Studio+2005/default.aspx" /><category term="Sharepoint" scheme="http://bloggingabout.net/blogs/chilberto/archive/tags/Sharepoint/default.aspx" /></entry><entry><title>Oracle ODP.Net Transactions</title><link rel="alternate" type="text/html" href="/blogs/chilberto/archive/2008/01/07/oracle-odp-net-transactions.aspx" /><id>/blogs/chilberto/archive/2008/01/07/oracle-odp-net-transactions.aspx</id><published>2008-01-07T08:53:35Z</published><updated>2008-01-07T08:53:35Z</updated><content type="html">&lt;p&gt;The Oracle Data Provider for .Net (ODP.Net) version 10g does not support local database locking unless Patch 5916667 is applied.&amp;nbsp; Because all transactions will be treated as distributed (i.e., spanning multiple databases), this might have adverse affects on performance, block level locking (as opposed to row level) and limited functionality (e.g., not supporting global temporary tables). &lt;/p&gt; &lt;p&gt;This affects the Microsoft Line of Business Adapter for Oracle (Oracle LOB) as it relies on ODP.Net for interacting with the Oracle Client.&lt;/p&gt; &lt;p&gt;Applying the patch is pretty straight forward and can be downloaded via &lt;a href="http://metalink.oracle.com/%20" target="_blank"&gt;Oracle Metalink&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;Even after the patch, the default behaviour is to create a distributed transaction.&amp;nbsp; This can be manually specified by creating and setting the following registry key:&lt;/p&gt; &lt;p&gt;&lt;a href="http://bloggingabout.net/blogs/chilberto/WindowsLiveWriter/OracleODP.NetTransactions_123BE/registry.png"&gt;&lt;img style="border-top-width:0px;border-left-width:0px;border-bottom-width:0px;border-right-width:0px;" height="228" alt="registry" src="http://bloggingabout.net/blogs/chilberto/WindowsLiveWriter/OracleODP.NetTransactions_123BE/registry_thumb.png" width="668" border="0" /&gt;&lt;/a&gt;&amp;nbsp; &lt;/p&gt; &lt;p&gt;The Transaction List of the Distributed Transaction Coordinator can be used to verify if the patch and setting has been applied successfully.&amp;nbsp; The following screenshot illustrates that the registry PromotableTransaction key has been set to &amp;quot;promotable&amp;quot; and distributed transactions are being generated (assuming the locks do not belong to any other processes):&lt;/p&gt; &lt;p&gt;&lt;a href="http://bloggingabout.net/blogs/chilberto/WindowsLiveWriter/OracleODP.NetTransactions_123BE/dtc.png"&gt;&lt;img style="border-top-width:0px;border-left-width:0px;border-bottom-width:0px;border-right-width:0px;" height="278" alt="dtc" src="http://bloggingabout.net/blogs/chilberto/WindowsLiveWriter/OracleODP.NetTransactions_123BE/dtc_thumb.png" width="736" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://bloggingabout.net/aggbug.aspx?PostID=454374" width="1" height="1"&gt;</content><author><name>chilberto</name><uri>http://bloggingabout.net/members/chilberto/default.aspx</uri></author></entry></feed>