<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:copyright="http://blogs.law.harvard.edu/tech/rss" xmlns:image="http://purl.org/rss/1.0/modules/image/">
    <channel>
        <title>Development 4.0</title>
        <link>http://williamkent.net/Default.aspx</link>
        <description>Musings &amp;  Reflections</description>
        <language>en-US</language>
        <copyright>William Kent</copyright>
        <managingEditor>blog@williamkent.net</managingEditor>
        <generator>Subtext Version 1.9.5.176</generator>
        <image>
            <title>Development 4.0</title>
            <url>http://williamkent.net/images/RSS2Image.gif</url>
            <link>http://williamkent.net/Default.aspx</link>
            <width>77</width>
            <height>60</height>
        </image>
        <item>
            <title>ReSharper 4.0 has been released</title>
            <category>C# 3.0</category>
            <category>Development</category>
            <category>Linq</category>
            <category>Product</category>
            <link>http://williamkent.net/archive/2008/06/10/resharper-4.0-has-been-released.aspx</link>
            <description>&lt;p&gt;ReSharper 4.0 has been released and it has a &lt;a href="http://www.jetbrains.com/resharper/buy/index.jsp#upgradeuser"&gt;30 day trail available&lt;/a&gt;. &lt;/p&gt;
&lt;p&gt;ReSharper 4.0 features full support for C# 3.0 and LinQ.&lt;/p&gt;
&lt;p&gt;It also has some new &lt;a href="http://www.jetbrains.com/resharper/features/newfeatures.html"&gt;refactorings built in&lt;/a&gt;, and promises to be faster. &lt;/p&gt;
&lt;p&gt;I have been using the beta version on Visual Studio 2008 for a while, and I did not notice any errors with the version I had. &lt;br /&gt;A great thing about it, is that it can help you in learning some of the new C# 3.0 features, by suggesting refactorings that &lt;br /&gt;take advantage of the new features.&lt;/p&gt;
&lt;p&gt;I was shocked by the cost to upgrade from 3.0 to 4.0 though: $249. That is excessive.&lt;br /&gt;Around $150 – $100 would be reasonable and expected. &lt;/p&gt;
&lt;p&gt;For someone who has been using ReSharper since pre 1.0 it felt a bit like a slap in the face. &lt;/p&gt;
&lt;p&gt; I hope jetBrains might drop the upgrade fee, or at least have an introductory upgrade offer.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;UPDATE: I received a message from Ann of Jetbrains, saying that there was a minor issue with the web page&lt;br /&gt;that had the pricing, and that the correct pricing is now available&lt;a href="http://www.jetbrains.com/resharper/buy/index.jsp#upgradeuser"&gt;&lt;/a&gt;. This brings the cost down to $209 for Full version 3&lt;br /&gt;to Full version  upgrade, and a good $149 for C# 3 upgrade to C# 4 upgrade.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;/em&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;&lt;img src="http://williamkent.net/aggbug/62.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>William Kent</dc:creator>
            <guid>http://williamkent.net/archive/2008/06/10/resharper-4.0-has-been-released.aspx</guid>
            <pubDate>Tue, 10 Jun 2008 20:06:01 GMT</pubDate>
            <comments>http://williamkent.net/archive/2008/06/10/resharper-4.0-has-been-released.aspx#feedback</comments>
            <wfw:commentRss>http://williamkent.net/comments/commentRss/62.aspx</wfw:commentRss>
            <trackback:ping>http://williamkent.net/services/trackbacks/62.aspx</trackback:ping>
        </item>
        <item>
            <title>Programatically updating a BDC primary key column in MOSS </title>
            <category>Sharepoint</category>
            <link>http://williamkent.net/archive/2008/06/09/programatically-updating-a-bdc-primary-key-column-in-moss.aspx</link>
            <description>If you have a document library or list, that contains a BDC column, you mig th run into updating the value of the primary key column programatically .If you try to do this the regular way,k you will not receive an error, but the new value will never show up in the row. &lt;pre&gt;AnSPFile.Item["MyPrimaryBDCColumnsName"] = 1;&lt;/pre&gt;
&lt;p&gt;&lt;font face="Verdana"&gt;Instead you need to seek out the internal name of the column your trying to modify. You can do this easily by iterating over the columns of the list. Once you have located the internal name of the column, use that as the indexer for the row, and us the little documented class &lt;/font&gt;EntityInstanceIdEncoder to convert your new value into a BDC formatted value.&lt;/p&gt;
&lt;p&gt;An example of using EntityInstanceIdEncoder.&lt;/p&gt;&lt;font face="Courier New"&gt;AnSPFile.Item["MyPrimaryBDCColumns&lt;strong&gt;&lt;em&gt;Internal&lt;/em&gt;&lt;/strong&gt;Name"] = EntityInstanceIdEncoder.EncodeEntityInstanceId(new object[] { "1" });&lt;/font&gt; 
&lt;p&gt;You can quickly see if a column contains BDC encoded information by looking at the actual data (programatically) of the column. If the values look a bit like “_xxx30935” its probably a BDC encoded column.&lt;br /&gt;Note: In the regular list view interface, Sharepoint will display a user friendly interpretation of the BDC data. &lt;/p&gt;
&lt;p&gt;The EntityInstanceIdEncoder has a second function which will convert BDC encoded data back to its normal form. &lt;/p&gt;&lt;font face="Courier New"&gt;object[] decoded = EntityInstanceIdEncoder.DecodeEntityInstanceId(source);&lt;/font&gt; 
&lt;p&gt;The EntityInstanceIdEncoder has a third function which you can use to tell if a column contains BDC encoded data or not&lt;/p&gt;&lt;font face="Courier New"&gt;EntityInstanceIdEncoder.IsEncodedIdentifier (Convert.ToString(AnSPFile.Item[ "MyPrimaryBDCColumns&lt;strong&gt;&lt;em&gt;Internal&lt;/em&gt;&lt;/strong&gt;Name"])&lt;/font&gt; 
&lt;p&gt;One caveat to this method is that it will return false if the value of the current row is null, even if all other rows in the column contain encoded bdc information. &lt;/p&gt;
&lt;p&gt;Hopefully this will help others who are faced with modifying a BDC column programatically and cannot find a lot of documentation on the subject in the Sharepoint documentation.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;&lt;div class="bjtags"&gt;Tags:  &lt;a rel="tag" href="http://technorati.com/tag/Sharepoint"&gt;Sharepoint&lt;/a&gt;, &lt;a rel="tag" href="http://technorati.com/tag/BDC"&gt;BDC&lt;/a&gt;&lt;/div&gt;&lt;img src="http://williamkent.net/aggbug/61.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>William Kent</dc:creator>
            <guid>http://williamkent.net/archive/2008/06/09/programatically-updating-a-bdc-primary-key-column-in-moss.aspx</guid>
            <pubDate>Mon, 09 Jun 2008 22:24:28 GMT</pubDate>
            <comments>http://williamkent.net/archive/2008/06/09/programatically-updating-a-bdc-primary-key-column-in-moss.aspx#feedback</comments>
            <wfw:commentRss>http://williamkent.net/comments/commentRss/61.aspx</wfw:commentRss>
            <trackback:ping>http://williamkent.net/services/trackbacks/61.aspx</trackback:ping>
        </item>
        <item>
            <title>Code to store Infopath forms via WCF</title>
            <category>Sharepoint</category>
            <link>http://williamkent.net/archive/2008/06/09/code-to-store-infopath-forms-via-wcf.aspx</link>
            <description>&lt;p&gt;The following is a code snibbit which will allow you to store Infopath forms via WCF. &lt;/p&gt;
&lt;p&gt;In this post I focus soley on the WCF aspects, in a later post I will talk about the configuration of the Infopath form in order to utilize the code.  &lt;/p&gt;
&lt;blockquote&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;using&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; System;&lt;?xml:namespace prefix ="" o /?&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;using&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; System.Data;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;using&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; System.IO;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;using&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; System.ServiceModel;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;using&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; System.Xml;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;[ServiceContract()]&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;[XmlSerializerFormat]&lt;font color="#000000"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;public&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; &lt;span style="COLOR: blue"&gt;interface&lt;/span&gt; IInfopathStorage&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;[OperationContract]&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;XmlDocument LoadForm(&lt;span style="COLOR: blue"&gt;int&lt;/span&gt; id);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;[OperationContract]&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;span style="COLOR: blue"&gt;void&lt;/span&gt; StoreForm(XmlDocument xmlDoc, &lt;span style="COLOR: blue"&gt;int&lt;/span&gt; id);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;public&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; &lt;span style="COLOR: blue"&gt;class&lt;/span&gt; InfopathStorage : IInfopathStorage&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;span style="COLOR: blue"&gt;public&lt;/span&gt; XmlDocument LoadForm(&lt;span style="COLOR: blue"&gt;int&lt;/span&gt; id)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;XmlDocument xmlDoc = &lt;span style="COLOR: blue"&gt;new&lt;/span&gt; XmlDocument();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;&lt;span style="COLOR: #2b91af"&gt;StringReader&lt;/span&gt; sr = &lt;span style="COLOR: blue"&gt;new&lt;/span&gt; &lt;span style="COLOR: #2b91af"&gt;StringReader&lt;/span&gt;(MyDal.GetForm(id));&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;xmlDoc.Load(sr);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;&lt;span style="COLOR: blue"&gt;return&lt;/span&gt; xmlDoc;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;span style="COLOR: blue"&gt;public&lt;/span&gt; &lt;span style="COLOR: blue"&gt;void&lt;/span&gt; StoreForm(XmlDocument xmlDoc, &lt;span style="COLOR: blue"&gt;int&lt;/span&gt; id)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;MyDal.StoreForm(xmlDoc, id);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 10pt"&gt;&lt;span style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;}&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;The most notable part of the code should be the [XmlSerializerFormat] attribute. This bit of magic will allow the passing of the XmlDocument object. Without the attribute you will get a compile time error stating that the XmlDocument cannot be serialized.&lt;/p&gt;
&lt;blockquote&gt;&lt;font face="courier new"&gt;
&lt;p&gt;  &amp;lt;service name="&lt;font face="courier new"&gt;InfopathStorage" behaviorConfiguration="returnFaults"&amp;gt;&lt;br /&gt;    &amp;lt;endpoint contract="IPersonalClientQuestionnaire" binding="&lt;strong&gt;basicHttpBinding&lt;/strong&gt;"/&amp;gt;&lt;br /&gt;   &amp;lt;/service&amp;gt;&lt;/font&gt;&lt;/p&gt;&lt;/font&gt;&lt;/blockquote&gt;

&lt;p&gt;In your web.config file where you configure the WCF endpoints, its important to make sure your binding is set to basicHttpBidining, instead of wsHttpBiding. Otherwise Infopath will return errors.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;&lt;div class="bjtags"&gt;Tags:  &lt;a rel="tag" href="http://technorati.com/tag/Infopath"&gt;Infopath&lt;/a&gt;, &lt;a rel="tag" href="http://technorati.com/tag/WCF"&gt;WCF&lt;/a&gt;, &lt;a rel="tag" href="http://technorati.com/tag/Sharepoint"&gt;Sharepoint&lt;/a&gt;&lt;/div&gt;&lt;img src="http://williamkent.net/aggbug/60.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>William Kent</dc:creator>
            <guid>http://williamkent.net/archive/2008/06/09/code-to-store-infopath-forms-via-wcf.aspx</guid>
            <pubDate>Mon, 09 Jun 2008 21:53:40 GMT</pubDate>
            <comments>http://williamkent.net/archive/2008/06/09/code-to-store-infopath-forms-via-wcf.aspx#feedback</comments>
            <wfw:commentRss>http://williamkent.net/comments/commentRss/60.aspx</wfw:commentRss>
            <trackback:ping>http://williamkent.net/services/trackbacks/60.aspx</trackback:ping>
        </item>
        <item>
            <title>Configuring Sharepoint for use with Infopath and forms server</title>
            <category>Sharepoint</category>
            <link>http://williamkent.net/archive/2008/06/09/configuring-sharepoint-for-use-with-infopath-and-forms-server.aspx</link>
            <description>&lt;h1&gt;Pre requisites&lt;/h1&gt;
&lt;ul&gt;
&lt;li&gt;A server running Moss 2007 (Enterprise license) &lt;/li&gt;
&lt;li&gt;Visual Studio 2005 &lt;/li&gt;
&lt;li&gt;Infopath extensions for Visual Studio 2005 &lt;/li&gt;&lt;/ul&gt;
&lt;p&gt; &lt;/p&gt;
&lt;h1&gt;Sharepoint configuration &lt;/h1&gt;
&lt;ul&gt;
&lt;li&gt;Ensure that you have activated the Enterprise license &lt;/li&gt;
&lt;li&gt;Ensure that you have activated the Forms server feature &lt;/li&gt;
&lt;li&gt;Ensure that the forms library is available in the site where you wish to publish infopath forms. &lt;/li&gt;&lt;/ul&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;If the site you intend to publish your forms at is a publishing site, the option to create a forms library will not exist, in which case you have to activate a feature to have access to the forms library. &lt;/p&gt;
&lt;p&gt;Ensure that the following features are enabled (on the site and the site collection): &lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Office SharePoint Server Enterprise Site features &lt;/li&gt;
&lt;li&gt;Team Collaboration Lists &lt;/li&gt;
&lt;li&gt;Office SharePoint Server Standard Site features &lt;/li&gt;&lt;/ol&gt;
&lt;h2&gt;Create a library to hold the Data Connection files &lt;/h2&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;If this library type is not visible in Sharepoint for you, you need to enable enterprise feature on the portal and in the site. Jot down the address to the library you just created, you will need it later. &lt;/p&gt;The data connection file is a configuration file that tells Sharepoint how and with whom an Infopath form is allowed to communicate with, when its running in Forms Server. You can have Infopath client create them automatically, and put them in the data connection library. If you use the Infopath client to automatically create the files and put them in the library, the client will automatically reference the Data connection files in the library. If you manually create the data connection files, you need to update the forms to reference the new data connection file. The data connection files are used for submitting forms, loading forms, and loading data via web services into drop down menus or other dynamic content. 
&lt;p&gt; &lt;/p&gt;
&lt;h2&gt;Create a forms library &lt;/h2&gt;
&lt;p&gt;&lt;span style="mso-no-proof: yes"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;This will be the library where you want to create the forms. &lt;/p&gt;
&lt;p&gt;At this point Sharepoint should be ready to host the forms and the configuration files required to get an Infopath up and running. &lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 10pt"&gt; &lt;/p&gt;&lt;div class="bjtags"&gt;Tags:  &lt;a rel="tag" href="http://technorati.com/tag/Sharepoint"&gt;Sharepoint&lt;/a&gt;, &lt;a rel="tag" href="http://technorati.com/tag/Infopath"&gt;Infopath&lt;/a&gt;&lt;/div&gt;&lt;img src="http://williamkent.net/aggbug/59.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>William Kent</dc:creator>
            <guid>http://williamkent.net/archive/2008/06/09/configuring-sharepoint-for-use-with-infopath-and-forms-server.aspx</guid>
            <pubDate>Mon, 09 Jun 2008 17:39:07 GMT</pubDate>
            <comments>http://williamkent.net/archive/2008/06/09/configuring-sharepoint-for-use-with-infopath-and-forms-server.aspx#feedback</comments>
            <wfw:commentRss>http://williamkent.net/comments/commentRss/59.aspx</wfw:commentRss>
            <trackback:ping>http://williamkent.net/services/trackbacks/59.aspx</trackback:ping>
        </item>
        <item>
            <title>Amazon.com is down</title>
            <category>Security</category>
            <link>http://williamkent.net/archive/2008/06/06/amazon.com-is-down.aspx</link>
            <description>&lt;p&gt;Amazon.com appears to be down, and has been down for quite a while. &lt;/p&gt;
&lt;p&gt;“&lt;strong&gt;Http/1.1 Service Unavailable”&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;You can still access your amazon.com goodies via the secure site (https). &lt;/p&gt;
&lt;p&gt;It will be interesting to find out what caused such a widespread and long outage and one of the premium .com sites.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;/strong&gt; &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;/strong&gt; &lt;/p&gt;&lt;img src="http://williamkent.net/aggbug/58.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>William Kent</dc:creator>
            <guid>http://williamkent.net/archive/2008/06/06/amazon.com-is-down.aspx</guid>
            <pubDate>Fri, 06 Jun 2008 18:12:29 GMT</pubDate>
            <comments>http://williamkent.net/archive/2008/06/06/amazon.com-is-down.aspx#feedback</comments>
            <wfw:commentRss>http://williamkent.net/comments/commentRss/58.aspx</wfw:commentRss>
            <trackback:ping>http://williamkent.net/services/trackbacks/58.aspx</trackback:ping>
        </item>
        <item>
            <title>Enterprise Library 4.0 is out</title>
            <category>C# 3.0</category>
            <link>http://williamkent.net/archive/2008/05/16/enterprise-library-4.0-is-out.aspx</link>
            <description>&lt;p&gt;A brand new version of the &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=90DE37E0-7B42-4044-99BE-F8ECFBBC5B65&amp;amp;displaylang=en"&gt;Enterprise Library&lt;/a&gt; has been &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=90DE37E0-7B42-4044-99BE-F8ECFBBC5B65&amp;amp;displaylang=en"&gt;released&lt;/a&gt;. &lt;/p&gt;
&lt;p&gt;Most notable is the integration and &lt;a href="http://helpdesk.codingrobots.com/"&gt;support&lt;/a&gt; for Visual Studio 2008.&lt;/p&gt;&lt;div class="bjtags"&gt;Tags:  &lt;a rel="tag" href="http://technorati.com/tag/VS2008,+Enterprise+Library"&gt;VS2008,+Enterprise+Library&lt;/a&gt;&lt;/div&gt;&lt;img src="http://williamkent.net/aggbug/57.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>William Kent</dc:creator>
            <guid>http://williamkent.net/archive/2008/05/16/enterprise-library-4.0-is-out.aspx</guid>
            <pubDate>Fri, 16 May 2008 19:13:59 GMT</pubDate>
            <comments>http://williamkent.net/archive/2008/05/16/enterprise-library-4.0-is-out.aspx#feedback</comments>
            <wfw:commentRss>http://williamkent.net/comments/commentRss/57.aspx</wfw:commentRss>
            <trackback:ping>http://williamkent.net/services/trackbacks/57.aspx</trackback:ping>
        </item>
        <item>
            <title>Document libraries vs File shares</title>
            <category>Sharepoint</category>
            <link>http://williamkent.net/archive/2008/05/07/document-libraries-vs-file-shares.aspx</link>
            <description>&lt;p&gt;Joel Oleson has &lt;a href="http://blogs.msdn.com/sharepoint/archive/2007/01/02/is-the-file-server-dead.aspx"&gt;published a great blog &lt;/a&gt;post regarding the choice of wether or not to store files on a file share or in a document library in WSS/MOSS.&lt;/p&gt;
&lt;p&gt;He also has a &lt;a href="http://blogs.msdn.com/joelo/archive/2007/11/08/what-not-to-store-in-sharepoint.aspx"&gt;great post&lt;/a&gt; on what not to store in Sharepoint. &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;&lt;img src="http://williamkent.net/aggbug/56.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>William Kent</dc:creator>
            <guid>http://williamkent.net/archive/2008/05/07/document-libraries-vs-file-shares.aspx</guid>
            <pubDate>Wed, 07 May 2008 17:13:35 GMT</pubDate>
            <comments>http://williamkent.net/archive/2008/05/07/document-libraries-vs-file-shares.aspx#feedback</comments>
            <wfw:commentRss>http://williamkent.net/comments/commentRss/56.aspx</wfw:commentRss>
            <trackback:ping>http://williamkent.net/services/trackbacks/56.aspx</trackback:ping>
        </item>
        <item>
            <title>A few decent Sharepoint development articles</title>
            <category>Sharepoint</category>
            <link>http://williamkent.net/archive/2008/05/06/a-few-decent-sharepoint-development-articles.aspx</link>
            <description>&lt;p&gt;Experienced .Net or Sharepoint developers should be aware of the patterns mentioned in the  documents, but its a good review, and you might find a few gems:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/aa973248.aspx"&gt;Best Practices: Using Disposable Windows SharePoint Services Objects&lt;/a&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Learn the appropriate ways to write your code when using Microsoft Windows SharePoint Services objects so that you can avoid retaining the objects in memory with the Microsoft .NET Framework&lt;/p&gt;&lt;/blockquote&gt;
&lt;p dir="ltr"&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/bb687949.aspx"&gt;Best Practices: Common Coding Issues When Using the SharePoint Object Model&lt;/a&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p dir="ltr"&gt;Learn about common issues encountered by developers who write custom code by using the SharePoint object model&lt;/p&gt;&lt;/blockquote&gt;
&lt;p dir="ltr"&gt; &lt;/p&gt;
&lt;p dir="ltr"&gt; &lt;/p&gt;&lt;img src="http://williamkent.net/aggbug/55.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>William Kent</dc:creator>
            <guid>http://williamkent.net/archive/2008/05/06/a-few-decent-sharepoint-development-articles.aspx</guid>
            <pubDate>Tue, 06 May 2008 19:59:36 GMT</pubDate>
            <comments>http://williamkent.net/archive/2008/05/06/a-few-decent-sharepoint-development-articles.aspx#feedback</comments>
            <wfw:commentRss>http://williamkent.net/comments/commentRss/55.aspx</wfw:commentRss>
            <trackback:ping>http://williamkent.net/services/trackbacks/55.aspx</trackback:ping>
        </item>
        <item>
            <title>SharePoint Content Deployment </title>
            <category>Sharepoint</category>
            <link>http://williamkent.net/archive/2008/05/06/sharepoint-content-deployment.aspx</link>
            <description>&lt;p&gt;&lt;span id="ctl00_ctl00_Content_TabContentPanel_Content_wikiSourceLabel"&gt;Moving and deploying content between Sharepoint farms can be a pain&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Chris O'Brien wants to save us all some aggrevation and has produced the SharePoint Content Deployment Wizard which is available on Codeplex&lt;/span&gt;&lt;/p&gt;
&lt;p class="citation"&gt;&lt;cite cite="http://www.codeplex.com/SPDeploymentWizard"&gt;&lt;a href="http://www.codeplex.com/SPDeploymentWizard"&gt;SharePoint Content Deployment Wizard - Home&lt;/a&gt;&lt;/cite&gt;.&lt;/p&gt;
&lt;p class="citation"&gt;(Note its still in Beta)&lt;/p&gt;
&lt;p class="citation" align="left"&gt;If you have more robust needs you could check out the &lt;a href="http://www.metalogix.net/"&gt;Megalogix&lt;/a&gt; &lt;a href="http://www.metalogix.net/"&gt;tools&lt;/a&gt;. I have used them with sucess in the past. They are not cheap however.&lt;/p&gt;&lt;img src="http://williamkent.net/aggbug/54.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>William Kent</dc:creator>
            <guid>http://williamkent.net/archive/2008/05/06/sharepoint-content-deployment.aspx</guid>
            <pubDate>Tue, 06 May 2008 19:45:40 GMT</pubDate>
            <comments>http://williamkent.net/archive/2008/05/06/sharepoint-content-deployment.aspx#feedback</comments>
            <wfw:commentRss>http://williamkent.net/comments/commentRss/54.aspx</wfw:commentRss>
            <trackback:ping>http://williamkent.net/services/trackbacks/54.aspx</trackback:ping>
        </item>
        <item>
            <title>Sharepoint behaves oddly if you attempt to delete a document library</title>
            <category>Sharepoint</category>
            <link>http://williamkent.net/archive/2008/01/14/sharepoint-behaves-oddly-if-you-attempt-to-delete-a-document.aspx</link>
            <description>&lt;p&gt;Recently I have been involved in a large migration from a previous version of Sharepoint to 2007. &lt;/p&gt;
&lt;p&gt;We came across some odd behaviour at times, when we were modfiying and updating the existing site after the move.&lt;/p&gt;
&lt;p&gt;After a lot of digging around I came across the following &lt;a href="http://support.microsoft.com/kb/827930"&gt;KB article&lt;/a&gt;.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;font size="1"&gt;Windows SharePoint Services users cannot delete a folder, a document library, a site, or a site collection if either of the following conditions is true: &lt;/font&gt;&lt;/p&gt;
&lt;table class="list ul"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td class="bullet"&gt;&lt;font size="1"&gt;•&lt;/font&gt;&lt;/td&gt;
&lt;td class="text"&gt;&lt;font size="1"&gt;The folder, the document library, the site, or the site collection contains over 40,000 subfolders and documents.&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td class="bullet"&gt;&lt;font size="1"&gt;•&lt;/font&gt;&lt;/td&gt;
&lt;td class="text"&gt;&lt;font size="1"&gt;The size of the folder, the document library, the site, or the site collection is larger than (but not equal to) 2 gigabytes (GB).&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;font size="1"&gt;Windows SharePoint Services users cannot rename a folder, document library, site, or site collection if either of the following conditions is true: &lt;/font&gt;
&lt;table class="list ul"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td class="bullet"&gt;&lt;font size="1"&gt;•&lt;/font&gt;&lt;/td&gt;
&lt;td class="text"&gt;&lt;font size="1"&gt;The folder, the document library, the site, or the site collection contains over 10,000 subfolders and documents.&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td class="bullet"&gt;&lt;font size="1"&gt;•&lt;/font&gt;&lt;/td&gt;
&lt;td class="text"&gt;&lt;font size="1"&gt;The size of the folder, the document library, the site, or the site collection is larger than (but not equal to) 500 megabytes (MB).&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;font size="1"&gt;The calculation of the maximum number of objects that a folder, a document library, a site, or a site collection can contain includes the root folder, the subfolders, the documents that are contained in the root folder, and the documents that are contained in the subfolders. &lt;br /&gt;&lt;br /&gt;For example, a document library that contains 9,993 documents exceeds the maximum limit of 10,000 items. The number of items that is calculated for the document library is actually 10,001 because the number of items includes the number of documents (9993), the number of files in the Forms folder (6), the forms folder (1), and the root folder of the document library (1). &lt;/font&gt;&lt;/blockquote&gt;&lt;img src="http://williamkent.net/aggbug/53.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>William Kent</dc:creator>
            <guid>http://williamkent.net/archive/2008/01/14/sharepoint-behaves-oddly-if-you-attempt-to-delete-a-document.aspx</guid>
            <pubDate>Mon, 14 Jan 2008 17:08:04 GMT</pubDate>
            <comments>http://williamkent.net/archive/2008/01/14/sharepoint-behaves-oddly-if-you-attempt-to-delete-a-document.aspx#feedback</comments>
            <wfw:commentRss>http://williamkent.net/comments/commentRss/53.aspx</wfw:commentRss>
            <trackback:ping>http://williamkent.net/services/trackbacks/53.aspx</trackback:ping>
        </item>
    </channel>
</rss>