<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 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:dc="http://purl.org/dc/elements/1.1/" xmlns:pingback="http://madskills.com/public/xml/rss/module/pingback/" version="2.0">
  <channel>
    <title>An Irishman Down Under</title>
    <link>http://blog.keithpatton.com/</link>
    <description>Keith Patton's Blog</description>
    <language>en-us</language>
    <copyright>Keith Patton</copyright>
    <lastBuildDate>Mon, 06 Oct 2008 12:00:57 GMT</lastBuildDate>
    <generator>newtelligence dasBlog 1.9.6264.0</generator>
    <managingEditor>kpatton@gmail.com</managingEditor>
    <webMaster>kpatton@gmail.com</webMaster>
    <item>
      <trackback:ping>http://blog.keithpatton.com/Trackback.aspx?guid=0e875094-3ff5-47c9-b2a0-01c2131de61d</trackback:ping>
      <pingback:server>http://blog.keithpatton.com/pingback.aspx</pingback:server>
      <pingback:target>http://blog.keithpatton.com/PermaLink,guid,0e875094-3ff5-47c9-b2a0-01c2131de61d.aspx</pingback:target>
      <dc:creator>Keith Patton</dc:creator>
      <wfw:comment>http://blog.keithpatton.com/CommentView,guid,0e875094-3ff5-47c9-b2a0-01c2131de61d.aspx</wfw:comment>
      <wfw:commentRss>http://blog.keithpatton.com/SyndicationService.asmx/GetEntryCommentsRss?guid=0e875094-3ff5-47c9-b2a0-01c2131de61d</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
After the recent announcement by Scott Guthrie that JQuery would receive official
support from Microsoft (<a href="http://weblogs.asp.net/scottgu/archive/2008/09/28/jquery-and-microsoft.aspx">http://weblogs.asp.net/scottgu/archive/2008/09/28/jquery-and-microsoft.aspx</a>),
many people see that as the heralding of a new dawn. 
</p>
        <p>
We missed out on NUnit (MsTest), NDoc (Sandcastle) and NHibernate (Linq to SQL/Entity
Framework) for sure, but what do you think should be embraced next?
</p>
        <p>
 
</p>
        <p>
Post your answer here:
</p>
        <a title="http://stackoverflow.com/questions/173996/whats-the-next-piece-of-open-source-software-that-microsoft-should-embrace" href="http://stackoverflow.com/questions/173996/whats-the-next-piece-of-open-source-software-that-microsoft-should-embrace">http://stackoverflow.com/questions/173996/whats-the-next-piece-of-open-source-software-that-microsoft-should-embrace</a>
        <img width="0" height="0" src="http://blog.keithpatton.com/aggbug.ashx?id=0e875094-3ff5-47c9-b2a0-01c2131de61d" />
      </body>
      <title>What&amp;rsquo;s the next piece of open source software that Microsoft should embrace?</title>
      <guid isPermaLink="false">http://blog.keithpatton.com/PermaLink,guid,0e875094-3ff5-47c9-b2a0-01c2131de61d.aspx</guid>
      <link>http://blog.keithpatton.com/2008/10/06/Whatrsquos+The+Next+Piece+Of+Open+Source+Software+That+Microsoft+Should+Embrace.aspx</link>
      <pubDate>Mon, 06 Oct 2008 12:00:57 GMT</pubDate>
      <description>&lt;p&gt;
After the recent announcement by Scott Guthrie that JQuery would receive official
support from Microsoft (&lt;a href="http://weblogs.asp.net/scottgu/archive/2008/09/28/jquery-and-microsoft.aspx"&gt;http://weblogs.asp.net/scottgu/archive/2008/09/28/jquery-and-microsoft.aspx&lt;/a&gt;),
many people see that as the heralding of a new dawn. 
&lt;/p&gt;
&lt;p&gt;
We missed out on NUnit (MsTest), NDoc (Sandcastle) and NHibernate (Linq to SQL/Entity
Framework) for sure, but what do you think should be embraced next?
&lt;/p&gt;
&lt;p&gt;
&amp;#160;
&lt;/p&gt;
&lt;p&gt;
Post your answer here:
&lt;/p&gt;
&lt;a title="http://stackoverflow.com/questions/173996/whats-the-next-piece-of-open-source-software-that-microsoft-should-embrace" href="http://stackoverflow.com/questions/173996/whats-the-next-piece-of-open-source-software-that-microsoft-should-embrace"&gt;http://stackoverflow.com/questions/173996/whats-the-next-piece-of-open-source-software-that-microsoft-should-embrace&lt;/a&gt;&lt;img width="0" height="0" src="http://blog.keithpatton.com/aggbug.ashx?id=0e875094-3ff5-47c9-b2a0-01c2131de61d" /&gt;</description>
      <comments>http://blog.keithpatton.com/CommentView,guid,0e875094-3ff5-47c9-b2a0-01c2131de61d.aspx</comments>
      <category>Life in New Zealand</category>
    </item>
    <item>
      <trackback:ping>http://blog.keithpatton.com/Trackback.aspx?guid=dee377ae-9a71-4e3d-82c5-d8aefdd1fe6d</trackback:ping>
      <pingback:server>http://blog.keithpatton.com/pingback.aspx</pingback:server>
      <pingback:target>http://blog.keithpatton.com/PermaLink,guid,dee377ae-9a71-4e3d-82c5-d8aefdd1fe6d.aspx</pingback:target>
      <dc:creator>Keith Patton</dc:creator>
      <wfw:comment>http://blog.keithpatton.com/CommentView,guid,dee377ae-9a71-4e3d-82c5-d8aefdd1fe6d.aspx</wfw:comment>
      <wfw:commentRss>http://blog.keithpatton.com/SyndicationService.asmx/GetEntryCommentsRss?guid=dee377ae-9a71-4e3d-82c5-d8aefdd1fe6d</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
          <a href="http://blog.keithpatton.com/content/binary/WindowsLiveWriter/BailOutTruth_EA0D/wpcbe080924_2.gif">
            <img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="394" alt="wpcbe080924" src="http://blog.keithpatton.com/content/binary/WindowsLiveWriter/BailOutTruth_EA0D/wpcbe080924_thumb.gif" width="589" border="0" />
          </a>
        </p>
        <img width="0" height="0" src="http://blog.keithpatton.com/aggbug.ashx?id=dee377ae-9a71-4e3d-82c5-d8aefdd1fe6d" />
      </body>
      <title>Bail Out Truth</title>
      <guid isPermaLink="false">http://blog.keithpatton.com/PermaLink,guid,dee377ae-9a71-4e3d-82c5-d8aefdd1fe6d.aspx</guid>
      <link>http://blog.keithpatton.com/2008/09/27/Bail+Out+Truth.aspx</link>
      <pubDate>Sat, 27 Sep 2008 04:38:29 GMT</pubDate>
      <description>&lt;p&gt;
&lt;a href="http://blog.keithpatton.com/content/binary/WindowsLiveWriter/BailOutTruth_EA0D/wpcbe080924_2.gif"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="394" alt="wpcbe080924" src="http://blog.keithpatton.com/content/binary/WindowsLiveWriter/BailOutTruth_EA0D/wpcbe080924_thumb.gif" width="589" border="0" /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://blog.keithpatton.com/aggbug.ashx?id=dee377ae-9a71-4e3d-82c5-d8aefdd1fe6d" /&gt;</description>
      <comments>http://blog.keithpatton.com/CommentView,guid,dee377ae-9a71-4e3d-82c5-d8aefdd1fe6d.aspx</comments>
      <category>Life in New Zealand</category>
    </item>
    <item>
      <trackback:ping>http://blog.keithpatton.com/Trackback.aspx?guid=0f181c7e-6cb1-4983-bd61-9a028ccd0bc0</trackback:ping>
      <pingback:server>http://blog.keithpatton.com/pingback.aspx</pingback:server>
      <pingback:target>http://blog.keithpatton.com/PermaLink,guid,0f181c7e-6cb1-4983-bd61-9a028ccd0bc0.aspx</pingback:target>
      <dc:creator>Keith Patton</dc:creator>
      <wfw:comment>http://blog.keithpatton.com/CommentView,guid,0f181c7e-6cb1-4983-bd61-9a028ccd0bc0.aspx</wfw:comment>
      <wfw:commentRss>http://blog.keithpatton.com/SyndicationService.asmx/GetEntryCommentsRss?guid=0f181c7e-6cb1-4983-bd61-9a028ccd0bc0</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <div style="margin-left: 10px; margin-bottom: 10px;">
          <object type="application/x-shockwave-flash" data="http://www.flickr.com/apps/video/stewart.swf?v=60247" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="260" height="195">
            <param name="flashvars" value="intl_lang=en-us&amp;photo_secret=0399f2f883&amp;photo_id=2887405738&amp;show_info_box=true" />
            <param name="movie" value="http://www.flickr.com/apps/video/stewart.swf?v=60247" />
            <param name="bgcolor" value="#000000" />
            <param name="allowFullScreen" value="true" />
            <embed type="application/x-shockwave-flash" src="http://www.flickr.com/apps/video/stewart.swf?v=60247" bgcolor="#000000" allowfullscreen="true" flashvars="intl_lang=en-us&amp;photo_secret=0399f2f883&amp;photo_id=2887405738&amp;flickr_show_info_box=true" width="260" height="195">
            </embed>
          </object>
          <br />
          <span style="font-size: 0.9em; margin-top: 0px;">
            <a href="http://www.flickr.com/photos/anirishmandownunder/2887405738/">19092008085</a>
            <br />
Originally uploaded by <a href="http://www.flickr.com/people/anirishmandownunder/">An
Irishman Down Under</a></span>
        </div>
Woo hoo, bring on manly!<br clear="all" /><img width="0" height="0" src="http://blog.keithpatton.com/aggbug.ashx?id=0f181c7e-6cb1-4983-bd61-9a028ccd0bc0" /></body>
      <title>Warriors Stuff the Chooks</title>
      <guid isPermaLink="false">http://blog.keithpatton.com/PermaLink,guid,0f181c7e-6cb1-4983-bd61-9a028ccd0bc0.aspx</guid>
      <link>http://blog.keithpatton.com/2008/09/25/Warriors+Stuff+The+Chooks.aspx</link>
      <pubDate>Thu, 25 Sep 2008 10:29:46 GMT</pubDate>
      <description>&lt;div style="margin-left: 10px; margin-bottom: 10px;"&gt;
&lt;object type="application/x-shockwave-flash" data="http://www.flickr.com/apps/video/stewart.swf?v=60247" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="260" height="195"&gt;
&lt;param name="flashvars" value="intl_lang=en-us&amp;amp;photo_secret=0399f2f883&amp;amp;photo_id=2887405738&amp;amp;show_info_box=true"&gt;
&lt;param name="movie" value="http://www.flickr.com/apps/video/stewart.swf?v=60247"&gt;
&lt;param name="bgcolor" value="#000000"&gt;
&lt;param name="allowFullScreen" value="true"&gt;
&lt;embed type="application/x-shockwave-flash" src="http://www.flickr.com/apps/video/stewart.swf?v=60247" bgcolor="#000000" allowfullscreen="true" flashvars="intl_lang=en-us&amp;amp;photo_secret=0399f2f883&amp;amp;photo_id=2887405738&amp;amp;flickr_show_info_box=true" width="260" height="195"&gt;
&lt;/object&gt;
&lt;br&gt;
&lt;span style="font-size: 0.9em; margin-top: 0px;"&gt;&lt;a href="http://www.flickr.com/photos/anirishmandownunder/2887405738/"&gt;19092008085&lt;/a&gt;
&lt;br&gt;
Originally uploaded by &lt;a href="http://www.flickr.com/people/anirishmandownunder/"&gt;An
Irishman Down Under&lt;/a&gt;&lt;/span&gt;
&lt;/div&gt;
Woo hoo, bring on manly!&lt;br clear="all"&gt;
&lt;img width="0" height="0" src="http://blog.keithpatton.com/aggbug.ashx?id=0f181c7e-6cb1-4983-bd61-9a028ccd0bc0" /&gt;</description>
      <comments>http://blog.keithpatton.com/CommentView,guid,0f181c7e-6cb1-4983-bd61-9a028ccd0bc0.aspx</comments>
      <category>Life in New Zealand;Sport</category>
    </item>
    <item>
      <trackback:ping>http://blog.keithpatton.com/Trackback.aspx?guid=a2b54e1c-787a-497b-b8db-aa649ad1f322</trackback:ping>
      <pingback:server>http://blog.keithpatton.com/pingback.aspx</pingback:server>
      <pingback:target>http://blog.keithpatton.com/PermaLink,guid,a2b54e1c-787a-497b-b8db-aa649ad1f322.aspx</pingback:target>
      <dc:creator>Keith Patton</dc:creator>
      <wfw:comment>http://blog.keithpatton.com/CommentView,guid,a2b54e1c-787a-497b-b8db-aa649ad1f322.aspx</wfw:comment>
      <wfw:commentRss>http://blog.keithpatton.com/SyndicationService.asmx/GetEntryCommentsRss?guid=a2b54e1c-787a-497b-b8db-aa649ad1f322</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
          <a title="23092008560" href="http://www.flickr.com/photos/27592284@N00/2887397102/">
            <img alt="23092008560" src="http://static.flickr.com/3111/2887397102_c791305331.jpg" border="0" />
          </a>
          <a title="23092008559" href="http://www.flickr.com/photos/27592284@N00/2887396976/">
            <img alt="23092008559" src="http://static.flickr.com/3222/2887396976_2577472993.jpg" border="0" />
          </a>
          <a title="23092008558" href="http://www.flickr.com/photos/27592284@N00/2886562293/">
            <img alt="23092008558" src="http://static.flickr.com/3159/2886562293_0b51f24d4f.jpg" border="0" />
          </a>
          <a title="23092008556" href="http://www.flickr.com/photos/27592284@N00/2887396696/">
            <img alt="23092008556" src="http://static.flickr.com/3285/2887396696_bae6a23a94.jpg" border="0" />
          </a>
          <a title="23092008554" href="http://www.flickr.com/photos/27592284@N00/2886562001/">
            <img alt="23092008554" src="http://static.flickr.com/3283/2886562001_ef08c5787c.jpg" border="0" />
          </a>
          <a title="23092008552" href="http://www.flickr.com/photos/27592284@N00/2887396372/">
            <img alt="23092008552" src="http://static.flickr.com/3006/2887396372_47052daed8.jpg" border="0" />
          </a>
          <a title="23092008550" href="http://www.flickr.com/photos/27592284@N00/2886561713/">
            <img alt="23092008550" src="http://static.flickr.com/3174/2886561713_4bcb49ae3c.jpg" border="0" />
          </a>
          <a title="23092008548" href="http://www.flickr.com/photos/27592284@N00/2887396072/">
            <img alt="23092008548" src="http://static.flickr.com/3296/2887396072_db7885483f.jpg" border="0" />
          </a>
          <a title="30082008541" href="http://www.flickr.com/photos/27592284@N00/2886561449/">
            <img alt="30082008541" src="http://static.flickr.com/3265/2886561449_e8fbfdf1b4.jpg" border="0" />
          </a>
          <a title="30082008540" href="http://www.flickr.com/photos/27592284@N00/2887395754/">
            <img alt="30082008540" src="http://static.flickr.com/3183/2887395754_4502b52aae.jpg" border="0" />
          </a>
          <a title="30082008538" href="http://www.flickr.com/photos/27592284@N00/2887395624/">
            <img alt="30082008538" src="http://static.flickr.com/3080/2887395624_75e48a86dc.jpg" border="0" />
          </a>
          <a title="16082008531" href="http://www.flickr.com/photos/27592284@N00/2886560927/">
            <img alt="16082008531" src="http://static.flickr.com/3125/2886560927_fc6c6eaace.jpg" border="0" />
          </a>
        </p>
        <img width="0" height="0" src="http://blog.keithpatton.com/aggbug.ashx?id=a2b54e1c-787a-497b-b8db-aa649ad1f322" />
      </body>
      <title>Tommy shopping and at the zoo</title>
      <guid isPermaLink="false">http://blog.keithpatton.com/PermaLink,guid,a2b54e1c-787a-497b-b8db-aa649ad1f322.aspx</guid>
      <link>http://blog.keithpatton.com/2008/09/25/Tommy+Shopping+And+At+The+Zoo.aspx</link>
      <pubDate>Thu, 25 Sep 2008 10:21:03 GMT</pubDate>
      <description>&lt;p&gt;
&lt;a title="23092008560" href="http://www.flickr.com/photos/27592284@N00/2887397102/"&gt;&lt;img alt="23092008560" src="http://static.flickr.com/3111/2887397102_c791305331.jpg" border="0" /&gt;&lt;/a&gt;&lt;a title="23092008559" href="http://www.flickr.com/photos/27592284@N00/2887396976/"&gt;&lt;img alt="23092008559" src="http://static.flickr.com/3222/2887396976_2577472993.jpg" border="0" /&gt;&lt;/a&gt;&lt;a title="23092008558" href="http://www.flickr.com/photos/27592284@N00/2886562293/"&gt;&lt;img alt="23092008558" src="http://static.flickr.com/3159/2886562293_0b51f24d4f.jpg" border="0" /&gt;&lt;/a&gt;&lt;a title="23092008556" href="http://www.flickr.com/photos/27592284@N00/2887396696/"&gt;&lt;img alt="23092008556" src="http://static.flickr.com/3285/2887396696_bae6a23a94.jpg" border="0" /&gt;&lt;/a&gt;&lt;a title="23092008554" href="http://www.flickr.com/photos/27592284@N00/2886562001/"&gt;&lt;img alt="23092008554" src="http://static.flickr.com/3283/2886562001_ef08c5787c.jpg" border="0" /&gt;&lt;/a&gt;&lt;a title="23092008552" href="http://www.flickr.com/photos/27592284@N00/2887396372/"&gt;&lt;img alt="23092008552" src="http://static.flickr.com/3006/2887396372_47052daed8.jpg" border="0" /&gt;&lt;/a&gt;&lt;a title="23092008550" href="http://www.flickr.com/photos/27592284@N00/2886561713/"&gt;&lt;img alt="23092008550" src="http://static.flickr.com/3174/2886561713_4bcb49ae3c.jpg" border="0" /&gt;&lt;/a&gt;&lt;a title="23092008548" href="http://www.flickr.com/photos/27592284@N00/2887396072/"&gt;&lt;img alt="23092008548" src="http://static.flickr.com/3296/2887396072_db7885483f.jpg" border="0" /&gt;&lt;/a&gt;&lt;a title="30082008541" href="http://www.flickr.com/photos/27592284@N00/2886561449/"&gt;&lt;img alt="30082008541" src="http://static.flickr.com/3265/2886561449_e8fbfdf1b4.jpg" border="0" /&gt;&lt;/a&gt;&lt;a title="30082008540" href="http://www.flickr.com/photos/27592284@N00/2887395754/"&gt;&lt;img alt="30082008540" src="http://static.flickr.com/3183/2887395754_4502b52aae.jpg" border="0" /&gt;&lt;/a&gt;&lt;a title="30082008538" href="http://www.flickr.com/photos/27592284@N00/2887395624/"&gt;&lt;img alt="30082008538" src="http://static.flickr.com/3080/2887395624_75e48a86dc.jpg" border="0" /&gt;&lt;/a&gt;&lt;a title="16082008531" href="http://www.flickr.com/photos/27592284@N00/2886560927/"&gt;&lt;img alt="16082008531" src="http://static.flickr.com/3125/2886560927_fc6c6eaace.jpg" border="0" /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://blog.keithpatton.com/aggbug.ashx?id=a2b54e1c-787a-497b-b8db-aa649ad1f322" /&gt;</description>
      <comments>http://blog.keithpatton.com/CommentView,guid,a2b54e1c-787a-497b-b8db-aa649ad1f322.aspx</comments>
      <category>Life in New Zealand</category>
    </item>
    <item>
      <trackback:ping>http://blog.keithpatton.com/Trackback.aspx?guid=44e5fcad-8950-4df1-bd42-2af72f9ca85c</trackback:ping>
      <pingback:server>http://blog.keithpatton.com/pingback.aspx</pingback:server>
      <pingback:target>http://blog.keithpatton.com/PermaLink,guid,44e5fcad-8950-4df1-bd42-2af72f9ca85c.aspx</pingback:target>
      <dc:creator>Keith Patton</dc:creator>
      <wfw:comment>http://blog.keithpatton.com/CommentView,guid,44e5fcad-8950-4df1-bd42-2af72f9ca85c.aspx</wfw:comment>
      <wfw:commentRss>http://blog.keithpatton.com/SyndicationService.asmx/GetEntryCommentsRss?guid=44e5fcad-8950-4df1-bd42-2af72f9ca85c</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
I believe the problems experienced around the world with the global credit crisis
arise from a fundamental problem in our definition of money and the way most modern
industrialized nations have structured control over management of the money supply.
</p>
        <p>
Neither Barack Obama or John McCain have any intention of enacting any sort of monetary
reform as far as i can tell. Unfortunately, the only person who i think agrees with
all this in the US is Ron Paul <a href="http://www.campaignforliberty.com/">http://www.campaignforliberty.com/</a>,
and i don’t agree with much else of his! 
</p>
        <p>
          <a href="http://en.wikipedia.org/wiki/American_Monetary_Institute">http://en.wikipedia.org/wiki/American_Monetary_Institute</a>
        </p>
        <p>
“If <a href="http://en.wikipedia.org/wiki/Money">money</a> is a <a href="http://en.wikipedia.org/wiki/Commodity">commodity</a> to
be traded, then all that matters is that the money is 100% backed by some commodity,
like <a href="http://en.wikipedia.org/wiki/Gold">gold</a> or <a href="http://en.wikipedia.org/wiki/Silver">silver</a> for
example. If money is credit, then it makes sense that bankers control it, as they
do in the <a href="http://en.wikipedia.org/wiki/United_States">United States</a> today.
But if money is an artifact of law, whose value is derived from law (payment of taxes
and legal tender laws) then the Institute argues it would only be proper for the government
to issue, and control the <a href="http://en.wikipedia.org/wiki/Money_supply">money
supply</a>.”
</p>
        <p>
          <a href="http://www.monetary.org/need_for_monetary_reform.html">http://www.monetary.org/need_for_monetary_reform.html</a>
        </p>
        <p>
Monetary reform is achieved in 3 parts which must be enacted together for it to work.
Any one or any two of them alone won’t do it, but could actually further harm
the monetary situation.
</p>
        <p>
1. First, <b>incorporate the Federal Reserve System into the U.S. Treasury</b> where
all new money is created by government as money, not interest-bearing debt, and spent
into circulation to promote the general welfare; monitored to be neither inflationary
nor deflationary.
</p>
        <p>
2. Second, <b>halt the banks privilege to create money</b> by ending the fractional
reserve system in a gentle and elegant way. All the past monetized private credit
is converted into U.S. government money. Banks then act as intermediaries accepting
savings deposits and loaning them out to borrowers; what people think they do now.
</p>
        <p>
3. Third, <b>spend new money into circulation on infrastructure, including education
and healthcare </b>needed for a growing society, starting with the $1.6 trillion that
the American Society of Civil Engineers estimate is needed for infrastructure repair;
creating good jobs across our nation, re-invigorating local economies and re-funding
government at all levels.
</p>
        <p>
REVOLUTION!
</p>
        <img width="0" height="0" src="http://blog.keithpatton.com/aggbug.ashx?id=44e5fcad-8950-4df1-bd42-2af72f9ca85c" />
      </body>
      <title>Monetary Reform the only answer to global credit crisis</title>
      <guid isPermaLink="false">http://blog.keithpatton.com/PermaLink,guid,44e5fcad-8950-4df1-bd42-2af72f9ca85c.aspx</guid>
      <link>http://blog.keithpatton.com/2008/09/20/Monetary+Reform+The+Only+Answer+To+Global+Credit+Crisis.aspx</link>
      <pubDate>Sat, 20 Sep 2008 04:22:36 GMT</pubDate>
      <description>&lt;p&gt;
I believe the problems experienced around the world with the global credit crisis
arise from a fundamental problem in our definition of money and the way most modern
industrialized nations have structured control over management of the money supply.
&lt;/p&gt;
&lt;p&gt;
Neither Barack Obama or John McCain have any intention of enacting any sort of monetary
reform as far as i can tell. Unfortunately, the only person who i think agrees with
all this in the US is Ron Paul &lt;a href="http://www.campaignforliberty.com/"&gt;http://www.campaignforliberty.com/&lt;/a&gt;,
and i don&amp;#8217;t agree with much else of his! 
&lt;/p&gt;
&lt;p&gt;
&lt;a href="http://en.wikipedia.org/wiki/American_Monetary_Institute"&gt;http://en.wikipedia.org/wiki/American_Monetary_Institute&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
&amp;#8220;If &lt;a href="http://en.wikipedia.org/wiki/Money"&gt;money&lt;/a&gt; is a &lt;a href="http://en.wikipedia.org/wiki/Commodity"&gt;commodity&lt;/a&gt; to
be traded, then all that matters is that the money is 100% backed by some commodity,
like &lt;a href="http://en.wikipedia.org/wiki/Gold"&gt;gold&lt;/a&gt; or &lt;a href="http://en.wikipedia.org/wiki/Silver"&gt;silver&lt;/a&gt; for
example. If money is credit, then it makes sense that bankers control it, as they
do in the &lt;a href="http://en.wikipedia.org/wiki/United_States"&gt;United States&lt;/a&gt; today.
But if money is an artifact of law, whose value is derived from law (payment of taxes
and legal tender laws) then the Institute argues it would only be proper for the government
to issue, and control the &lt;a href="http://en.wikipedia.org/wiki/Money_supply"&gt;money
supply&lt;/a&gt;.&amp;#8221;
&lt;/p&gt;
&lt;p&gt;
&lt;a href="http://www.monetary.org/need_for_monetary_reform.html"&gt;http://www.monetary.org/need_for_monetary_reform.html&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
Monetary reform is achieved in 3 parts which must be enacted together for it to work.
Any one or any two of them alone won&amp;#8217;t do it, but could actually further harm
the monetary situation.
&lt;/p&gt;
&lt;p&gt;
1. First, &lt;b&gt;incorporate the Federal Reserve System into the U.S. Treasury&lt;/b&gt; where
all new money is created by government as money, not interest-bearing debt, and spent
into circulation to promote the general welfare; monitored to be neither inflationary
nor deflationary.
&lt;/p&gt;
&lt;p&gt;
2. Second, &lt;b&gt;halt the banks privilege to create money&lt;/b&gt; by ending the fractional
reserve system in a gentle and elegant way. All the past monetized private credit
is converted into U.S. government money. Banks then act as intermediaries accepting
savings deposits and loaning them out to borrowers; what people think they do now.
&lt;/p&gt;
&lt;p&gt;
3. Third, &lt;b&gt;spend new money into circulation on infrastructure, including education
and healthcare &lt;/b&gt;needed for a growing society, starting with the $1.6 trillion that
the American Society of Civil Engineers estimate is needed for infrastructure repair;
creating good jobs across our nation, re-invigorating local economies and re-funding
government at all levels.
&lt;/p&gt;
&lt;p&gt;
REVOLUTION!
&lt;/p&gt;
&lt;img width="0" height="0" src="http://blog.keithpatton.com/aggbug.ashx?id=44e5fcad-8950-4df1-bd42-2af72f9ca85c" /&gt;</description>
      <comments>http://blog.keithpatton.com/CommentView,guid,44e5fcad-8950-4df1-bd42-2af72f9ca85c.aspx</comments>
      <category>Life in New Zealand</category>
    </item>
    <item>
      <trackback:ping>http://blog.keithpatton.com/Trackback.aspx?guid=a546b999-51e8-469c-abbc-15a90bec732a</trackback:ping>
      <pingback:server>http://blog.keithpatton.com/pingback.aspx</pingback:server>
      <pingback:target>http://blog.keithpatton.com/PermaLink,guid,a546b999-51e8-469c-abbc-15a90bec732a.aspx</pingback:target>
      <dc:creator>Keith Patton</dc:creator>
      <wfw:comment>http://blog.keithpatton.com/CommentView,guid,a546b999-51e8-469c-abbc-15a90bec732a.aspx</wfw:comment>
      <wfw:commentRss>http://blog.keithpatton.com/SyndicationService.asmx/GetEntryCommentsRss?guid=a546b999-51e8-469c-abbc-15a90bec732a</wfw:commentRss>
      <slash:comments>2</slash:comments>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
          <a title="DSC03595" href="http://www.flickr.com/photos/27592284@N00/2839714440/">
            <img alt="DSC03595" src="http://static.flickr.com/3074/2839714440_4b407bf8bb.jpg" border="0" />
          </a>
          <a title="DSC03593" href="http://www.flickr.com/photos/27592284@N00/2838880641/">
            <img alt="DSC03593" src="http://static.flickr.com/3220/2838880641_9671c21d5e.jpg" border="0" />
          </a>
          <a title="DSC03591" href="http://www.flickr.com/photos/27592284@N00/2838880471/">
            <img alt="DSC03591" src="http://static.flickr.com/3160/2838880471_44de56a690.jpg" border="0" />
          </a>
          <a title="DSC03587" href="http://www.flickr.com/photos/27592284@N00/2839713898/">
            <img alt="DSC03587" src="http://static.flickr.com/3223/2839713898_2f871328c3.jpg" border="0" />
          </a>
          <a title="DSC03597" href="http://www.flickr.com/photos/27592284@N00/2839713740/">
            <img alt="DSC03597" src="http://static.flickr.com/3150/2839713740_58d2548e17.jpg" border="0" />
          </a>
          <a title="DSC03590" href="http://www.flickr.com/photos/27592284@N00/2838879917/">
            <img alt="DSC03590" src="http://static.flickr.com/3057/2838879917_060381f96d.jpg" border="0" />
          </a>
          <a title="DSC03587" href="http://www.flickr.com/photos/27592284@N00/2839713438/">
            <img alt="DSC03587" src="http://static.flickr.com/3170/2839713438_d664c6bc8c.jpg" border="0" />
          </a>
          <a title="DSC03586" href="http://www.flickr.com/photos/27592284@N00/2838879597/">
            <img alt="DSC03586" src="http://static.flickr.com/3009/2838879597_681b3766d6.jpg" border="0" />
          </a>
          <a title="DSC03585" href="http://www.flickr.com/photos/27592284@N00/2839712996/">
            <img alt="DSC03585" src="http://static.flickr.com/3156/2839712996_a9fcb4f09d.jpg" border="0" />
          </a>
          <a title="DSC03582" href="http://www.flickr.com/photos/27592284@N00/2838879155/">
            <img alt="DSC03582" src="http://static.flickr.com/3019/2838879155_22a9c1ea98.jpg" border="0" />
          </a>
          <a title="DSC03581" href="http://www.flickr.com/photos/27592284@N00/2839712604/">
            <img alt="DSC03581" src="http://static.flickr.com/3080/2839712604_08da5fda34.jpg" border="0" />
          </a>
          <a title="DSC03579" href="http://www.flickr.com/photos/27592284@N00/2839712406/">
            <img alt="DSC03579" src="http://static.flickr.com/3227/2839712406_68da1ba5ee.jpg" border="0" />
          </a>
          <a title="DSC03576" href="http://www.flickr.com/photos/27592284@N00/2838878655/">
            <img alt="DSC03576" src="http://static.flickr.com/3142/2838878655_be6b2f0046.jpg" border="0" />
          </a>
          <a title="DSC03574" href="http://www.flickr.com/photos/27592284@N00/2838878485/">
            <img alt="DSC03574" src="http://static.flickr.com/3110/2838878485_6f119f91df.jpg" border="0" />
          </a>
          <a title="DSC03573" href="http://www.flickr.com/photos/27592284@N00/2838878279/">
            <img alt="DSC03573" src="http://static.flickr.com/3236/2838878279_1f9ec9fc52.jpg" border="0" />
          </a>
          <a title="DSC03561" href="http://www.flickr.com/photos/27592284@N00/2838878137/">
            <img alt="DSC03561" src="http://static.flickr.com/3113/2838878137_c4855a0852.jpg" border="0" />
          </a>
          <a title="DSC03558" href="http://www.flickr.com/photos/27592284@N00/2838877971/">
            <img alt="DSC03558" src="http://static.flickr.com/3084/2838877971_69eae22b54.jpg" border="0" />
          </a>
          <a title="DSC03565" href="http://www.flickr.com/photos/27592284@N00/2838877785/">
            <img alt="DSC03565" src="http://static.flickr.com/3115/2838877785_1655727ba8.jpg" border="0" />
          </a>
          <a title="DSC03569" href="http://www.flickr.com/photos/27592284@N00/2838877561/">
            <img alt="DSC03569" src="http://static.flickr.com/3086/2838877561_7fe3d955e6.jpg" border="0" />
          </a>
        </p>
        <img width="0" height="0" src="http://blog.keithpatton.com/aggbug.ashx?id=a546b999-51e8-469c-abbc-15a90bec732a" />
      </body>
      <title>Tommy on the Train and in the Snow!</title>
      <guid isPermaLink="false">http://blog.keithpatton.com/PermaLink,guid,a546b999-51e8-469c-abbc-15a90bec732a.aspx</guid>
      <link>http://blog.keithpatton.com/2008/09/08/Tommy+On+The+Train+And+In+The+Snow.aspx</link>
      <pubDate>Mon, 08 Sep 2008 11:40:19 GMT</pubDate>
      <description>&lt;p&gt;
&lt;a title="DSC03595" href="http://www.flickr.com/photos/27592284@N00/2839714440/"&gt;&lt;img alt="DSC03595" src="http://static.flickr.com/3074/2839714440_4b407bf8bb.jpg" border="0" /&gt;&lt;/a&gt;&lt;a title="DSC03593" href="http://www.flickr.com/photos/27592284@N00/2838880641/"&gt;&lt;img alt="DSC03593" src="http://static.flickr.com/3220/2838880641_9671c21d5e.jpg" border="0" /&gt;&lt;/a&gt;&lt;a title="DSC03591" href="http://www.flickr.com/photos/27592284@N00/2838880471/"&gt;&lt;img alt="DSC03591" src="http://static.flickr.com/3160/2838880471_44de56a690.jpg" border="0" /&gt;&lt;/a&gt;&lt;a title="DSC03587" href="http://www.flickr.com/photos/27592284@N00/2839713898/"&gt;&lt;img alt="DSC03587" src="http://static.flickr.com/3223/2839713898_2f871328c3.jpg" border="0" /&gt;&lt;/a&gt;&lt;a title="DSC03597" href="http://www.flickr.com/photos/27592284@N00/2839713740/"&gt;&lt;img alt="DSC03597" src="http://static.flickr.com/3150/2839713740_58d2548e17.jpg" border="0" /&gt;&lt;/a&gt;&lt;a title="DSC03590" href="http://www.flickr.com/photos/27592284@N00/2838879917/"&gt;&lt;img alt="DSC03590" src="http://static.flickr.com/3057/2838879917_060381f96d.jpg" border="0" /&gt;&lt;/a&gt;&lt;a title="DSC03587" href="http://www.flickr.com/photos/27592284@N00/2839713438/"&gt;&lt;img alt="DSC03587" src="http://static.flickr.com/3170/2839713438_d664c6bc8c.jpg" border="0" /&gt;&lt;/a&gt;&lt;a title="DSC03586" href="http://www.flickr.com/photos/27592284@N00/2838879597/"&gt;&lt;img alt="DSC03586" src="http://static.flickr.com/3009/2838879597_681b3766d6.jpg" border="0" /&gt;&lt;/a&gt;&lt;a title="DSC03585" href="http://www.flickr.com/photos/27592284@N00/2839712996/"&gt;&lt;img alt="DSC03585" src="http://static.flickr.com/3156/2839712996_a9fcb4f09d.jpg" border="0" /&gt;&lt;/a&gt;&lt;a title="DSC03582" href="http://www.flickr.com/photos/27592284@N00/2838879155/"&gt;&lt;img alt="DSC03582" src="http://static.flickr.com/3019/2838879155_22a9c1ea98.jpg" border="0" /&gt;&lt;/a&gt;&lt;a title="DSC03581" href="http://www.flickr.com/photos/27592284@N00/2839712604/"&gt;&lt;img alt="DSC03581" src="http://static.flickr.com/3080/2839712604_08da5fda34.jpg" border="0" /&gt;&lt;/a&gt;&lt;a title="DSC03579" href="http://www.flickr.com/photos/27592284@N00/2839712406/"&gt;&lt;img alt="DSC03579" src="http://static.flickr.com/3227/2839712406_68da1ba5ee.jpg" border="0" /&gt;&lt;/a&gt;&lt;a title="DSC03576" href="http://www.flickr.com/photos/27592284@N00/2838878655/"&gt;&lt;img alt="DSC03576" src="http://static.flickr.com/3142/2838878655_be6b2f0046.jpg" border="0" /&gt;&lt;/a&gt;&lt;a title="DSC03574" href="http://www.flickr.com/photos/27592284@N00/2838878485/"&gt;&lt;img alt="DSC03574" src="http://static.flickr.com/3110/2838878485_6f119f91df.jpg" border="0" /&gt;&lt;/a&gt;&lt;a title="DSC03573" href="http://www.flickr.com/photos/27592284@N00/2838878279/"&gt;&lt;img alt="DSC03573" src="http://static.flickr.com/3236/2838878279_1f9ec9fc52.jpg" border="0" /&gt;&lt;/a&gt;&lt;a title="DSC03561" href="http://www.flickr.com/photos/27592284@N00/2838878137/"&gt;&lt;img alt="DSC03561" src="http://static.flickr.com/3113/2838878137_c4855a0852.jpg" border="0" /&gt;&lt;/a&gt;&lt;a title="DSC03558" href="http://www.flickr.com/photos/27592284@N00/2838877971/"&gt;&lt;img alt="DSC03558" src="http://static.flickr.com/3084/2838877971_69eae22b54.jpg" border="0" /&gt;&lt;/a&gt;&lt;a title="DSC03565" href="http://www.flickr.com/photos/27592284@N00/2838877785/"&gt;&lt;img alt="DSC03565" src="http://static.flickr.com/3115/2838877785_1655727ba8.jpg" border="0" /&gt;&lt;/a&gt;&lt;a title="DSC03569" href="http://www.flickr.com/photos/27592284@N00/2838877561/"&gt;&lt;img alt="DSC03569" src="http://static.flickr.com/3086/2838877561_7fe3d955e6.jpg" border="0" /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://blog.keithpatton.com/aggbug.ashx?id=a546b999-51e8-469c-abbc-15a90bec732a" /&gt;</description>
      <comments>http://blog.keithpatton.com/CommentView,guid,a546b999-51e8-469c-abbc-15a90bec732a.aspx</comments>
      <category>Life in New Zealand</category>
    </item>
    <item>
      <trackback:ping>http://blog.keithpatton.com/Trackback.aspx?guid=57951fac-3b68-4330-a3f6-aa545cd85da4</trackback:ping>
      <pingback:server>http://blog.keithpatton.com/pingback.aspx</pingback:server>
      <pingback:target>http://blog.keithpatton.com/PermaLink,guid,57951fac-3b68-4330-a3f6-aa545cd85da4.aspx</pingback:target>
      <dc:creator>Keith Patton</dc:creator>
      <wfw:comment>http://blog.keithpatton.com/CommentView,guid,57951fac-3b68-4330-a3f6-aa545cd85da4.aspx</wfw:comment>
      <wfw:commentRss>http://blog.keithpatton.com/SyndicationService.asmx/GetEntryCommentsRss?guid=57951fac-3b68-4330-a3f6-aa545cd85da4</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
We created the following extension methods for entity framework to avoid code bloat
in consuming applications when working with these key types. I hope you find them
useful if you are working with the Entity Framework.
</p>
        <p>
 
</p>
        <p>
          <strong>EntityObject</strong>
        </p>
        <p>
/// &lt;summary&gt; 
<br />
/// Extension methods for EntityObject 
<br />
/// &lt;/summary&gt; 
<br />
public static class EntityObjectExtensions 
<br />
{ 
</p>
        <p>
    /// &lt;summary&gt; 
<br />
    /// Gets the original value for a modified entity object's property 
<br />
    /// &lt;/summary&gt; 
<br />
    /// &lt;returns&gt;the value before the property was modified&lt;/returns&gt; 
<br />
    public static T GetOriginalValue&lt;T&gt;(this EntityObject entityObject,
string propertyName) 
<br />
    { 
<br />
        if (entityObject == null) 
<br />
            return default(T); 
<br />
        if (entityObject.EntityState == EntityState.Modified) 
<br />
        { 
<br />
            ObjectContext context
= <font color="#ff0000">[YOUR OBJECT CONTEXT]</font><br />
            ObjectStateEntry
stateEntry = null; 
<br />
            context.ObjectStateManager.TryGetObjectStateEntry(entityObject,
out stateEntry); 
</p>
        <p>
            if (stateEntry
!= null) 
<br />
               
return (T)stateEntry.OriginalValues.GetValue(stateEntry.OriginalValues.GetOrdinal(propertyName)); 
</p>
        <p>
        } 
</p>
        <p>
        // return the value of the property 
<br />
        return (T)entityObject.GetType().GetProperty(propertyName).GetValue(entityObject,
null); 
<br />
    }
</p>
        <p>
          <strong>EntityCollection&lt;T&gt;</strong>
        </p>
        <p>
/// &lt;summary&gt; 
<br />
   /// Extension methods for EntityCollection 
<br />
   /// &lt;/summary&gt; 
<br />
   public static class EntityCollectionExtensions 
<br />
   { 
<br />
       /// &lt;summary&gt; 
<br />
       /// Loads the entity collection if it hasn't
already been loaded 
<br />
       /// &lt;/summary&gt; 
<br />
       /// &lt;typeparam name="T"&gt;Type
of entity collection&lt;/typeparam&gt; 
<br />
       /// &lt;param name="entityCollection"&gt;Entity
collection to potentially load entities into&lt;/param&gt; 
<br />
       /// &lt;param name="entitySource"&gt;The
source entity which has the entity collection relationship (modified or unchanged
only)&lt;/param&gt; 
<br />
       public static void EnsureLoaded&lt;T&gt;(this
EntityCollection&lt;T&gt; entityCollection, EntityObject entitySource) where T : class,
IEntityWithRelationships 
<br />
       { 
<br />
           if (entitySource != null
&amp;&amp; entityCollection != null &amp;&amp; !entityCollection.IsLoaded ) 
<br />
           { 
<br />
              
if (entitySource.EntityState == System.Data.EntityState.Modified || entitySource.EntityState
== System.Data.EntityState.Unchanged) 
<br />
              
{ 
<br />
                  
entityCollection.Load(); 
<br />
              
} 
<br />
           } 
<br />
       } 
</p>
        <p>
       /// &lt;summary&gt; 
<br />
       /// Returns the collection as a queryable type 
<br />
       /// &lt;/summary&gt; 
<br />
       /// &lt;typeparam name="T"&gt;Type
of entity collection&lt;/typeparam&gt; 
<br />
       /// &lt;param name="entityCollection"&gt;Entity
collection to return as a queryable object&lt;/param&gt; 
<br />
       /// &lt;param name="ensureLoaded"&gt;Flag
to determine if to load the collection if it has not been done so already&lt;/param&gt; 
<br />
       /// &lt;returns&gt;Queryable object for the in
memory collection&lt;/returns&gt; 
<br />
       public static IQueryable&lt;T&gt; AsQueryable&lt;T&gt;(this
EntityCollection&lt;T&gt; entityCollection, bool ensureLoaded, EntityObject entitySource)
where T : class, IEntityWithRelationships 
<br />
       { 
<br />
           if (ensureLoaded) 
<br />
              
EnsureLoaded(entityCollection, entitySource); 
<br />
           return entityCollection.AsQueryable(); 
<br />
       }
</p>
        <p>
 
</p>
        <p>
          <strong>EntityReference&lt;T&gt;</strong>
        </p>
        <p>
 
</p>
        <p>
/// &lt;summary&gt; 
<br />
   /// Extension methods for EntityReference 
<br />
   /// &lt;/summary&gt; 
<br />
   public static class EntityReferenceExtensions 
<br />
   { 
</p>
        <p>
       /// &lt;summary&gt; 
<br />
       /// Loads the entity reference or its value if
it hasn't already been loaded. 
<br />
       /// &lt;/summary&gt; 
<br />
       /// &lt;typeparam name="T"&gt;Type
of entity reference&lt;/typeparam&gt; 
<br />
       /// &lt;param name="entitySource"&gt;The
source entity which has the entity reference relationship (added, modified or unchanged
only)&lt;/param&gt; 
<br />
       public static void EnsureLoaded&lt;T&gt;(this
EntityReference&lt;T&gt; entityReference, EntityObject entitySource) where T : class,
IEntityWithRelationships 
<br />
       { 
<br />
           if (entitySource != null
&amp;&amp; entityReference != null &amp;&amp; !entityReference.IsLoaded &amp;&amp;
entityReference.EntityKey != null) 
<br />
           { 
<br />
              
if (entitySource.EntityState == System.Data.EntityState.Added) // add the value directly
as load will throw 
<br />
              
{ 
<br />
                  
if (entityReference.Value == null) 
<br />
                      
entityReference.Value = LoadByKey&lt;T&gt;(entityReference.EntityKey); 
<br />
              
} 
<br />
              
else if (entitySource.EntityState == System.Data.EntityState.Modified || entitySource.EntityState
== System.Data.EntityState.Unchanged) 
<br />
              
{ 
<br />
                  
entityReference.Load(); 
<br />
              
} 
<br />
           } 
<br />
       } 
</p>
        <blockquote>
          <p>
privateT LoadByKey&lt;T&gt;(object entityKey) 
<br />
{ 
<br />
    if (entityKey == null) 
<br />
        throw new ArgumentNullException("Supplied
entity key is null, unable to load entity", "entityKey"); 
<br />
    // make sure the object is loaded in the object context 
<br />
    ObjectContext objectContext = <font color="#ff0000">[YOUR OBJECT
CONTEXT]</font>; 
<br />
    EntityKey key = (EntityKey)entityKey; 
<br />
    ObjectStateEntry entry; 
<br />
    if (!objectContext.ObjectStateManager.TryGetObjectStateEntry(entityKey,
out entry) || entry.Entity == null) 
<br />
    { 
<br />
        return (T)objectContext.GetObjectByKey(key); 
<br />
    } 
<br />
    return (T)entry.Entity; 
<br />
}
</p>
        </blockquote>
        <p>
       /// &lt;summary&gt; 
<br />
       /// Whether or not the entity reference has an
entity key with a value present 
<br />
       /// &lt;/summary&gt; 
<br />
       public static bool HasEntityKeyFirstValue&lt;T&gt;(this
EntityReference&lt;T&gt; entityReference) where T : class, IEntityWithRelationships 
<br />
       { 
<br />
           return entityReference
!= null &amp;&amp; entityReference.EntityKey.HasFirstValue&lt;int&gt;(); 
<br />
       } 
</p>
        <p>
       /// &lt;summary&gt; 
<br />
       /// Get entity key with a value present 
<br />
       /// &lt;/summary&gt; 
<br />
       public static int GetEntityKeyFirstValue&lt;T&gt;(this
EntityReference&lt;T&gt; entityReference) where T : class, IEntityWithRelationships 
<br />
       { 
<br />
           if (entityReference !=
null) 
<br />
              
return entityReference.EntityKey.GetFirstValue&lt;int&gt;(); 
<br />
           return 0; 
<br />
       }
</p>
        <p>
 
</p>
        <p>
          <strong>EntityKey</strong>
        </p>
        <p>
 
</p>
        <p>
/// &lt;summary&gt; 
<br />
   /// Extension methods for EntityKey 
<br />
   /// &lt;/summary&gt; 
<br />
   public static class EntityKeyExtensions 
<br />
   { 
</p>
        <p>
       /// &lt;summary&gt; 
<br />
       /// Gets the first entity key value 
<br />
       /// &lt;/summary&gt; 
<br />
       /// &lt;returns&gt;the first entity key value&lt;/returns&gt; 
<br />
       public static T GetFirstValue&lt;T&gt;(this EntityKey
entityKey) 
<br />
       { 
<br />
           if (entityKey != null
&amp;&amp; entityKey.EntityKeyValues != null &amp;&amp; entityKey.EntityKeyValues.Length
&gt; 0) 
<br />
              
return (T)entityKey.EntityKeyValues.First().Value; 
<br />
           return default(T); 
<br />
       } 
</p>
        <p>
       /// &lt;summary&gt; 
<br />
       /// Sets the first entity key value 
<br />
       /// &lt;/summary&gt; 
<br />
       public static void SetFirstValue&lt;T&gt;(this
EntityKey entityKey, T value) 
<br />
       { 
<br />
           if (entityKey != null
&amp;&amp; entityKey.EntityKeyValues != null &amp;&amp; entityKey.EntityKeyValues.Length
&gt; 0) 
<br />
              
entityKey.EntityKeyValues.First().Value = value; 
<br />
           return; 
<br />
       } 
</p>
        <p>
       /// &lt;summary&gt; 
<br />
       /// Whether or not the entity key has a first
value 
<br />
       /// &lt;/summary&gt; 
<br />
       public static bool HasFirstValue&lt;T&gt;(this
EntityKey entityKey) 
<br />
       { 
<br />
           var firstValue = GetFirstValue&lt;T&gt;(entityKey); 
<br />
           var defaultValue = default(T); 
<br />
           return (!firstValue.Equals(defaultValue)); 
<br />
       }
</p>
        <img width="0" height="0" src="http://blog.keithpatton.com/aggbug.ashx?id=57951fac-3b68-4330-a3f6-aa545cd85da4" />
      </body>
      <title>Entity Framework - Key Extension Methods</title>
      <guid isPermaLink="false">http://blog.keithpatton.com/PermaLink,guid,57951fac-3b68-4330-a3f6-aa545cd85da4.aspx</guid>
      <link>http://blog.keithpatton.com/2008/08/16/Entity+Framework+Key+Extension+Methods.aspx</link>
      <pubDate>Sat, 16 Aug 2008 03:26:05 GMT</pubDate>
      <description>&lt;p&gt;
We created the following extension methods for entity framework to avoid code bloat
in consuming applications when working with these key types. I hope you find them
useful if you are working with the Entity Framework.
&lt;/p&gt;
&lt;p&gt;
&amp;#160;
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;EntityObject&lt;/strong&gt;
&lt;/p&gt;
&lt;p&gt;
/// &amp;lt;summary&amp;gt; 
&lt;br /&gt;
/// Extension methods for EntityObject 
&lt;br /&gt;
/// &amp;lt;/summary&amp;gt; 
&lt;br /&gt;
public static class EntityObjectExtensions 
&lt;br /&gt;
{ 
&lt;/p&gt;
&lt;p&gt;
&amp;#160;&amp;#160;&amp;#160; /// &amp;lt;summary&amp;gt; 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160; /// Gets the original value for a modified entity object's property 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160; /// &amp;lt;/summary&amp;gt; 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160; /// &amp;lt;returns&amp;gt;the value before the property was modified&amp;lt;/returns&amp;gt; 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160; public static T GetOriginalValue&amp;lt;T&amp;gt;(this EntityObject entityObject,
string propertyName) 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160; { 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; if (entityObject == null) 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; return default(T); 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; if (entityObject.EntityState == EntityState.Modified) 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; { 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; ObjectContext context
= &lt;font color="#ff0000"&gt;[YOUR OBJECT CONTEXT]&lt;/font&gt; 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; ObjectStateEntry
stateEntry = null; 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; context.ObjectStateManager.TryGetObjectStateEntry(entityObject,
out stateEntry); 
&lt;/p&gt;
&lt;p&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; if (stateEntry
!= null) 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;
return (T)stateEntry.OriginalValues.GetValue(stateEntry.OriginalValues.GetOrdinal(propertyName)); 
&lt;/p&gt;
&lt;p&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; } 
&lt;/p&gt;
&lt;p&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; // return the value of the property 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; return (T)entityObject.GetType().GetProperty(propertyName).GetValue(entityObject,
null); 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160; }
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;EntityCollection&amp;lt;T&amp;gt;&lt;/strong&gt;
&lt;/p&gt;
&lt;p&gt;
/// &amp;lt;summary&amp;gt; 
&lt;br /&gt;
&amp;#160;&amp;#160; /// Extension methods for EntityCollection 
&lt;br /&gt;
&amp;#160;&amp;#160; /// &amp;lt;/summary&amp;gt; 
&lt;br /&gt;
&amp;#160;&amp;#160; public static class EntityCollectionExtensions 
&lt;br /&gt;
&amp;#160;&amp;#160; { 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; /// &amp;lt;summary&amp;gt; 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; /// Loads the entity collection if it hasn't
already been loaded 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; /// &amp;lt;/summary&amp;gt; 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; /// &amp;lt;typeparam name=&amp;quot;T&amp;quot;&amp;gt;Type
of entity collection&amp;lt;/typeparam&amp;gt; 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; /// &amp;lt;param name=&amp;quot;entityCollection&amp;quot;&amp;gt;Entity
collection to potentially load entities into&amp;lt;/param&amp;gt; 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; /// &amp;lt;param name=&amp;quot;entitySource&amp;quot;&amp;gt;The
source entity which has the entity collection relationship (modified or unchanged
only)&amp;lt;/param&amp;gt; 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; public static void EnsureLoaded&amp;lt;T&amp;gt;(this
EntityCollection&amp;lt;T&amp;gt; entityCollection, EntityObject entitySource) where T : class,
IEntityWithRelationships 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; { 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; if (entitySource != null
&amp;amp;&amp;amp; entityCollection != null &amp;amp;&amp;amp; !entityCollection.IsLoaded ) 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; { 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;
if (entitySource.EntityState == System.Data.EntityState.Modified || entitySource.EntityState
== System.Data.EntityState.Unchanged) 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;
{ 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;
entityCollection.Load(); 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;
} 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; } 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; } 
&lt;/p&gt;
&lt;p&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; /// &amp;lt;summary&amp;gt; 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; /// Returns the collection as a queryable type 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; /// &amp;lt;/summary&amp;gt; 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; /// &amp;lt;typeparam name=&amp;quot;T&amp;quot;&amp;gt;Type
of entity collection&amp;lt;/typeparam&amp;gt; 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; /// &amp;lt;param name=&amp;quot;entityCollection&amp;quot;&amp;gt;Entity
collection to return as a queryable object&amp;lt;/param&amp;gt; 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; /// &amp;lt;param name=&amp;quot;ensureLoaded&amp;quot;&amp;gt;Flag
to determine if to load the collection if it has not been done so already&amp;lt;/param&amp;gt; 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; /// &amp;lt;returns&amp;gt;Queryable object for the in
memory collection&amp;lt;/returns&amp;gt; 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; public static IQueryable&amp;lt;T&amp;gt; AsQueryable&amp;lt;T&amp;gt;(this
EntityCollection&amp;lt;T&amp;gt; entityCollection, bool ensureLoaded, EntityObject entitySource)
where T : class, IEntityWithRelationships 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; { 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; if (ensureLoaded) 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;
EnsureLoaded(entityCollection, entitySource); 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; return entityCollection.AsQueryable(); 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }
&lt;/p&gt;
&lt;p&gt;
&amp;#160;
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;EntityReference&amp;lt;T&amp;gt;&lt;/strong&gt;
&lt;/p&gt;
&lt;p&gt;
&amp;#160;
&lt;/p&gt;
&lt;p&gt;
/// &amp;lt;summary&amp;gt; 
&lt;br /&gt;
&amp;#160;&amp;#160; /// Extension methods for EntityReference 
&lt;br /&gt;
&amp;#160;&amp;#160; /// &amp;lt;/summary&amp;gt; 
&lt;br /&gt;
&amp;#160;&amp;#160; public static class EntityReferenceExtensions 
&lt;br /&gt;
&amp;#160;&amp;#160; { 
&lt;/p&gt;
&lt;p&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; /// &amp;lt;summary&amp;gt; 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; /// Loads the entity reference or its value if
it hasn't already been loaded. 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; /// &amp;lt;/summary&amp;gt; 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; /// &amp;lt;typeparam name=&amp;quot;T&amp;quot;&amp;gt;Type
of entity reference&amp;lt;/typeparam&amp;gt; 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; /// &amp;lt;param name=&amp;quot;entitySource&amp;quot;&amp;gt;The
source entity which has the entity reference relationship (added, modified or unchanged
only)&amp;lt;/param&amp;gt; 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; public static void EnsureLoaded&amp;lt;T&amp;gt;(this
EntityReference&amp;lt;T&amp;gt; entityReference, EntityObject entitySource) where T : class,
IEntityWithRelationships 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; { 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; if (entitySource != null
&amp;amp;&amp;amp; entityReference != null &amp;amp;&amp;amp; !entityReference.IsLoaded &amp;amp;&amp;amp;
entityReference.EntityKey != null) 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; { 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;
if (entitySource.EntityState == System.Data.EntityState.Added) // add the value directly
as load will throw 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;
{ 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;
if (entityReference.Value == null) 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;
entityReference.Value = LoadByKey&amp;lt;T&amp;gt;(entityReference.EntityKey); 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;
} 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;
else if (entitySource.EntityState == System.Data.EntityState.Modified || entitySource.EntityState
== System.Data.EntityState.Unchanged) 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;
{ 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;
entityReference.Load(); 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;
} 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; } 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; } 
&lt;/p&gt;
&lt;blockquote&gt; 
&lt;p&gt;
privateT LoadByKey&amp;lt;T&amp;gt;(object entityKey) 
&lt;br /&gt;
{ 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160; if (entityKey == null) 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; throw new ArgumentNullException(&amp;quot;Supplied
entity key is null, unable to load entity&amp;quot;, &amp;quot;entityKey&amp;quot;); 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160; // make sure the object is loaded in the object context 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160; ObjectContext objectContext = &lt;font color="#ff0000"&gt;[YOUR OBJECT
CONTEXT]&lt;/font&gt;; 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160; EntityKey key = (EntityKey)entityKey; 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160; ObjectStateEntry entry; 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160; if (!objectContext.ObjectStateManager.TryGetObjectStateEntry(entityKey,
out entry) || entry.Entity == null) 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160; { 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; return (T)objectContext.GetObjectByKey(key); 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160; } 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160; return (T)entry.Entity; 
&lt;br /&gt;
}
&lt;/p&gt;
&lt;/blockquote&gt; 
&lt;p&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; /// &amp;lt;summary&amp;gt; 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; /// Whether or not the entity reference has an
entity key with a value present 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; /// &amp;lt;/summary&amp;gt; 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; public static bool HasEntityKeyFirstValue&amp;lt;T&amp;gt;(this
EntityReference&amp;lt;T&amp;gt; entityReference) where T : class, IEntityWithRelationships 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; { 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; return entityReference
!= null &amp;amp;&amp;amp; entityReference.EntityKey.HasFirstValue&amp;lt;int&amp;gt;(); 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; } 
&lt;/p&gt;
&lt;p&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; /// &amp;lt;summary&amp;gt; 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; /// Get entity key with a value present 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; /// &amp;lt;/summary&amp;gt; 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; public static int GetEntityKeyFirstValue&amp;lt;T&amp;gt;(this
EntityReference&amp;lt;T&amp;gt; entityReference) where T : class, IEntityWithRelationships 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; { 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; if (entityReference !=
null) 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;
return entityReference.EntityKey.GetFirstValue&amp;lt;int&amp;gt;(); 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; return 0; 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }
&lt;/p&gt;
&lt;p&gt;
&amp;#160;
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;EntityKey&lt;/strong&gt;
&lt;/p&gt;
&lt;p&gt;
&amp;#160;
&lt;/p&gt;
&lt;p&gt;
/// &amp;lt;summary&amp;gt; 
&lt;br /&gt;
&amp;#160;&amp;#160; /// Extension methods for EntityKey 
&lt;br /&gt;
&amp;#160;&amp;#160; /// &amp;lt;/summary&amp;gt; 
&lt;br /&gt;
&amp;#160;&amp;#160; public static class EntityKeyExtensions 
&lt;br /&gt;
&amp;#160;&amp;#160; { 
&lt;/p&gt;
&lt;p&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; /// &amp;lt;summary&amp;gt; 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; /// Gets the first entity key value 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; /// &amp;lt;/summary&amp;gt; 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; /// &amp;lt;returns&amp;gt;the first entity key value&amp;lt;/returns&amp;gt; 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; public static T GetFirstValue&amp;lt;T&amp;gt;(this EntityKey
entityKey) 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; { 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; if (entityKey != null
&amp;amp;&amp;amp; entityKey.EntityKeyValues != null &amp;amp;&amp;amp; entityKey.EntityKeyValues.Length
&amp;gt; 0) 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;
return (T)entityKey.EntityKeyValues.First().Value; 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; return default(T); 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; } 
&lt;/p&gt;
&lt;p&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; /// &amp;lt;summary&amp;gt; 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; /// Sets the first entity key value 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; /// &amp;lt;/summary&amp;gt; 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; public static void SetFirstValue&amp;lt;T&amp;gt;(this
EntityKey entityKey, T value) 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; { 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; if (entityKey != null
&amp;amp;&amp;amp; entityKey.EntityKeyValues != null &amp;amp;&amp;amp; entityKey.EntityKeyValues.Length
&amp;gt; 0) 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;
entityKey.EntityKeyValues.First().Value = value; 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; return; 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; } 
&lt;/p&gt;
&lt;p&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; /// &amp;lt;summary&amp;gt; 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; /// Whether or not the entity key has a first
value 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; /// &amp;lt;/summary&amp;gt; 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; public static bool HasFirstValue&amp;lt;T&amp;gt;(this
EntityKey entityKey) 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; { 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; var firstValue = GetFirstValue&amp;lt;T&amp;gt;(entityKey); 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; var defaultValue = default(T); 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; return (!firstValue.Equals(defaultValue)); 
&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }
&lt;/p&gt;
&lt;img width="0" height="0" src="http://blog.keithpatton.com/aggbug.ashx?id=57951fac-3b68-4330-a3f6-aa545cd85da4" /&gt;</description>
      <comments>http://blog.keithpatton.com/CommentView,guid,57951fac-3b68-4330-a3f6-aa545cd85da4.aspx</comments>
      <category>Technical</category>
    </item>
    <item>
      <trackback:ping>http://blog.keithpatton.com/Trackback.aspx?guid=bf3d266c-bfc3-47c1-a3fd-eae0e07af4cb</trackback:ping>
      <pingback:server>http://blog.keithpatton.com/pingback.aspx</pingback:server>
      <pingback:target>http://blog.keithpatton.com/PermaLink,guid,bf3d266c-bfc3-47c1-a3fd-eae0e07af4cb.aspx</pingback:target>
      <dc:creator>Keith Patton</dc:creator>
      <wfw:comment>http://blog.keithpatton.com/CommentView,guid,bf3d266c-bfc3-47c1-a3fd-eae0e07af4cb.aspx</wfw:comment>
      <wfw:commentRss>http://blog.keithpatton.com/SyndicationService.asmx/GetEntryCommentsRss?guid=bf3d266c-bfc3-47c1-a3fd-eae0e07af4cb</wfw:commentRss>
      <slash:comments>1</slash:comments>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <object type="application/x-shockwave-flash" width="400" height="300" data="http://www.flickr.com/apps/video/stewart.swf?v=58374" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000">
          <param name="flashvars" value="intl_lang=en-us&amp;photo_secret=8b84e3d583&amp;photo_id=2762785382" />
          <param name="movie" value="http://www.flickr.com/apps/video/stewart.swf?v=58374" />
          <param name="bgcolor" value="#000000" />
          <param name="allowFullScreen" value="true" />
          <embed type="application/x-shockwave-flash" src="http://www.flickr.com/apps/video/stewart.swf?v=58374" bgcolor="#000000" allowfullscreen="true" flashvars="intl_lang=en-us&amp;photo_secret=8b84e3d583&amp;photo_id=2762785382" height="300" width="400">
          </embed>
        </object>
        <img width="0" height="0" src="http://blog.keithpatton.com/aggbug.ashx?id=bf3d266c-bfc3-47c1-a3fd-eae0e07af4cb" />
      </body>
      <title>Tommy has a new bed</title>
      <guid isPermaLink="false">http://blog.keithpatton.com/PermaLink,guid,bf3d266c-bfc3-47c1-a3fd-eae0e07af4cb.aspx</guid>
      <link>http://blog.keithpatton.com/2008/08/14/Tommy+Has+A+New+Bed.aspx</link>
      <pubDate>Thu, 14 Aug 2008 12:47:57 GMT</pubDate>
      <description>&lt;object type="application/x-shockwave-flash" width="400" height="300" data="http://www.flickr.com/apps/video/stewart.swf?v=58374" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"&gt;
&lt;param name="flashvars" value="intl_lang=en-us&amp;amp;photo_secret=8b84e3d583&amp;amp;photo_id=2762785382"&gt;
&gt;
&lt;param name="movie" value="http://www.flickr.com/apps/video/stewart.swf?v=58374"&gt;
&gt;
&lt;param name="bgcolor" value="#000000"&gt;
&gt;
&lt;param name="allowFullScreen" value="true"&gt;
&gt;&lt;embed type="application/x-shockwave-flash" src="http://www.flickr.com/apps/video/stewart.swf?v=58374" bgcolor="#000000" allowfullscreen="true" flashvars="intl_lang=en-us&amp;amp;photo_secret=8b84e3d583&amp;amp;photo_id=2762785382" height="300" width="400"&gt;&lt;/embed&gt;
&lt;/object&gt;&lt;img width="0" height="0" src="http://blog.keithpatton.com/aggbug.ashx?id=bf3d266c-bfc3-47c1-a3fd-eae0e07af4cb" /&gt;</description>
      <comments>http://blog.keithpatton.com/CommentView,guid,bf3d266c-bfc3-47c1-a3fd-eae0e07af4cb.aspx</comments>
      <category>Life in New Zealand</category>
    </item>
    <item>
      <trackback:ping>http://blog.keithpatton.com/Trackback.aspx?guid=8518836f-3437-4381-88bf-ced96baa9dc5</trackback:ping>
      <pingback:server>http://blog.keithpatton.com/pingback.aspx</pingback:server>
      <pingback:target>http://blog.keithpatton.com/PermaLink,guid,8518836f-3437-4381-88bf-ced96baa9dc5.aspx</pingback:target>
      <dc:creator>Keith Patton</dc:creator>
      <wfw:comment>http://blog.keithpatton.com/CommentView,guid,8518836f-3437-4381-88bf-ced96baa9dc5.aspx</wfw:comment>
      <wfw:commentRss>http://blog.keithpatton.com/SyndicationService.asmx/GetEntryCommentsRss?guid=8518836f-3437-4381-88bf-ced96baa9dc5</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <object type="application/x-shockwave-flash" width="400" height="300" data="http://www.flickr.com/apps/video/stewart.swf?v=58374" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000">
          <param name="flashvars" value="intl_lang=en-us&amp;photo_secret=6e63edaedc&amp;photo_id=2762763008&amp;show_info_box=true" />
          <param name="movie" value="http://www.flickr.com/apps/video/stewart.swf?v=58374" />
          <param name="bgcolor" value="#000000" />
          <param name="allowFullScreen" value="true" />
          <embed type="application/x-shockwave-flash" src="http://www.flickr.com/apps/video/stewart.swf?v=58374" bgcolor="#000000" allowfullscreen="true" flashvars="intl_lang=en-us&amp;photo_secret=6e63edaedc&amp;photo_id=2762763008&amp;flickr_show_info_box=true" height="300" width="400">
          </embed>
        </object>
        <img width="0" height="0" src="http://blog.keithpatton.com/aggbug.ashx?id=8518836f-3437-4381-88bf-ced96baa9dc5" />
      </body>
      <title>Tommy Goes on Holiday</title>
      <guid isPermaLink="false">http://blog.keithpatton.com/PermaLink,guid,8518836f-3437-4381-88bf-ced96baa9dc5.aspx</guid>
      <link>http://blog.keithpatton.com/2008/08/14/Tommy+Goes+On+Holiday.aspx</link>
      <pubDate>Thu, 14 Aug 2008 12:37:04 GMT</pubDate>
      <description>&lt;object type="application/x-shockwave-flash" width="400" height="300" data="http://www.flickr.com/apps/video/stewart.swf?v=58374" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"&gt;
&lt;param name="flashvars" value="intl_lang=en-us&amp;amp;photo_secret=6e63edaedc&amp;amp;photo_id=2762763008&amp;amp;show_info_box=true"&gt;
&gt;
&lt;param name="movie" value="http://www.flickr.com/apps/video/stewart.swf?v=58374"&gt;
&gt;
&lt;param name="bgcolor" value="#000000"&gt;
&gt;
&lt;param name="allowFullScreen" value="true"&gt;
&gt;&lt;embed type="application/x-shockwave-flash" src="http://www.flickr.com/apps/video/stewart.swf?v=58374" bgcolor="#000000" allowfullscreen="true" flashvars="intl_lang=en-us&amp;amp;photo_secret=6e63edaedc&amp;amp;photo_id=2762763008&amp;amp;flickr_show_info_box=true" height="300" width="400"&gt;&lt;/embed&gt;
&lt;/object&gt;&lt;img width="0" height="0" src="http://blog.keithpatton.com/aggbug.ashx?id=8518836f-3437-4381-88bf-ced96baa9dc5" /&gt;</description>
      <comments>http://blog.keithpatton.com/CommentView,guid,8518836f-3437-4381-88bf-ced96baa9dc5.aspx</comments>
      <category>Life in New Zealand</category>
    </item>
    <item>
      <trackback:ping>http://blog.keithpatton.com/Trackback.aspx?guid=44392dfe-42ae-4b9d-9c3b-16f5ca3e8fe1</trackback:ping>
      <pingback:server>http://blog.keithpatton.com/pingback.aspx</pingback:server>
      <pingback:target>http://blog.keithpatton.com/PermaLink,guid,44392dfe-42ae-4b9d-9c3b-16f5ca3e8fe1.aspx</pingback:target>
      <dc:creator>Keith Patton</dc:creator>
      <wfw:comment>http://blog.keithpatton.com/CommentView,guid,44392dfe-42ae-4b9d-9c3b-16f5ca3e8fe1.aspx</wfw:comment>
      <wfw:commentRss>http://blog.keithpatton.com/SyndicationService.asmx/GetEntryCommentsRss?guid=44392dfe-42ae-4b9d-9c3b-16f5ca3e8fe1</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
All i can say is roll on spring....Probably my favouritest part of auckland is the
tamaki drive stretch out east. And sometimes you get blindingly beautiful sunsets
back across the city view. 
</p>
        <p>
          <a title="08042008231" href="http://www.flickr.com/photos/27592284@N00/2745691039/">
            <img height="547" alt="08042008231" src="http://static.flickr.com/3024/2745691039_f3676b07e9.jpg" width="729" border="0" />
          </a>
        </p>
        <img width="0" height="0" src="http://blog.keithpatton.com/aggbug.ashx?id=44392dfe-42ae-4b9d-9c3b-16f5ca3e8fe1" />
      </body>
      <title>Tamaki Drive Sunset</title>
      <guid isPermaLink="false">http://blog.keithpatton.com/PermaLink,guid,44392dfe-42ae-4b9d-9c3b-16f5ca3e8fe1.aspx</guid>
      <link>http://blog.keithpatton.com/2008/08/09/Tamaki+Drive+Sunset.aspx</link>
      <pubDate>Sat, 09 Aug 2008 10:16:26 GMT</pubDate>
      <description>&lt;p&gt;
All i can say is roll on spring....Probably my favouritest part of auckland is the
tamaki drive stretch out east. And sometimes you get blindingly beautiful sunsets
back across the city view. 
&lt;/p&gt;
&lt;p&gt;
&lt;a title="08042008231" href="http://www.flickr.com/photos/27592284@N00/2745691039/"&gt;&lt;img height="547" alt="08042008231" src="http://static.flickr.com/3024/2745691039_f3676b07e9.jpg" width="729" border="0" /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://blog.keithpatton.com/aggbug.ashx?id=44392dfe-42ae-4b9d-9c3b-16f5ca3e8fe1" /&gt;</description>
      <comments>http://blog.keithpatton.com/CommentView,guid,44392dfe-42ae-4b9d-9c3b-16f5ca3e8fe1.aspx</comments>
      <category>Life in New Zealand</category>
    </item>
    <item>
      <trackback:ping>http://blog.keithpatton.com/Trackback.aspx?guid=9c833292-f563-447b-a2dd-9d6e18925055</trackback:ping>
      <pingback:server>http://blog.keithpatton.com/pingback.aspx</pingback:server>
      <pingback:target>http://blog.keithpatton.com/PermaLink,guid,9c833292-f563-447b-a2dd-9d6e18925055.aspx</pingback:target>
      <dc:creator>Keith Patton</dc:creator>
      <wfw:comment>http://blog.keithpatton.com/CommentView,guid,9c833292-f563-447b-a2dd-9d6e18925055.aspx</wfw:comment>
      <wfw:commentRss>http://blog.keithpatton.com/SyndicationService.asmx/GetEntryCommentsRss?guid=9c833292-f563-447b-a2dd-9d6e18925055</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
Tommy is officially a big boy now he has his own bed. He even wants to go to bed early
at the moment, not sure how long that will last though!
</p>
        <p>
 
</p>
        <p>
          <a title="02082008524" href="http://www.flickr.com/photos/27592284@N00/2732102038/">
            <img alt="02082008524" src="http://static.flickr.com/3162/2732102038_7a3118fbd0.jpg" border="0" />
          </a>
        </p>
        <img width="0" height="0" src="http://blog.keithpatton.com/aggbug.ashx?id=9c833292-f563-447b-a2dd-9d6e18925055" />
      </body>
      <title>Tommy gets a new bed</title>
      <guid isPermaLink="false">http://blog.keithpatton.com/PermaLink,guid,9c833292-f563-447b-a2dd-9d6e18925055.aspx</guid>
      <link>http://blog.keithpatton.com/2008/08/04/Tommy+Gets+A+New+Bed.aspx</link>
      <pubDate>Mon, 04 Aug 2008 13:34:13 GMT</pubDate>
      <description>&lt;p&gt;
Tommy is officially a big boy now he has his own bed. He even wants to go to bed early
at the moment, not sure how long that will last though!
&lt;/p&gt;
&lt;p&gt;
&amp;#160;
&lt;/p&gt;
&lt;p&gt;
&lt;a title="02082008524" href="http://www.flickr.com/photos/27592284@N00/2732102038/"&gt;&lt;img alt="02082008524" src="http://static.flickr.com/3162/2732102038_7a3118fbd0.jpg" border="0" /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://blog.keithpatton.com/aggbug.ashx?id=9c833292-f563-447b-a2dd-9d6e18925055" /&gt;</description>
      <comments>http://blog.keithpatton.com/CommentView,guid,9c833292-f563-447b-a2dd-9d6e18925055.aspx</comments>
      <category>Life in New Zealand</category>
    </item>
    <item>
      <trackback:ping>http://blog.keithpatton.com/Trackback.aspx?guid=c33215bd-2d73-4cc1-95f4-2a1ce2e100dd</trackback:ping>
      <pingback:server>http://blog.keithpatton.com/pingback.aspx</pingback:server>
      <pingback:target>http://blog.keithpatton.com/PermaLink,guid,c33215bd-2d73-4cc1-95f4-2a1ce2e100dd.aspx</pingback:target>
      <dc:creator>Keith Patton</dc:creator>
      <wfw:comment>http://blog.keithpatton.com/CommentView,guid,c33215bd-2d73-4cc1-95f4-2a1ce2e100dd.aspx</wfw:comment>
      <wfw:commentRss>http://blog.keithpatton.com/SyndicationService.asmx/GetEntryCommentsRss?guid=c33215bd-2d73-4cc1-95f4-2a1ce2e100dd</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
Sorry lucy, no pictures of tommy as yet, here's some snaps of our weekend down at
christchurch/hamner springs. Will some trees do instead??
</p>
        <p>
          <a title="DSC03537" href="http://www.flickr.com/photos/27592284@N00/2684511768/">
            <img alt="DSC03537" src="http://static.flickr.com/2222/2684511768_407574a3d5.jpg" border="0" />
          </a>
          <a title="DSC03538" href="http://www.flickr.com/photos/27592284@N00/2683696635/">
            <img alt="DSC03538" src="http://static.flickr.com/3232/2683696635_f33d9a73f3.jpg" border="0" />
          </a>
          <a title="DSC03539" href="http://www.flickr.com/photos/27592284@N00/2683697485/">
            <img alt="DSC03539" src="http://static.flickr.com/3185/2683697485_ae7e0f25a3.jpg" border="0" />
          </a>
          <a title="DSC03541" href="http://www.flickr.com/photos/27592284@N00/2683697829/">
            <img alt="DSC03541" src="http://static.flickr.com/3031/2683697829_6cc01dfb9f.jpg" border="0" />
          </a>
          <a title="DSC03542" href="http://www.flickr.com/photos/27592284@N00/2684514450/">
            <img alt="DSC03542" src="http://static.flickr.com/3220/2684514450_e687959228.jpg" border="0" />
          </a>
          <a title="DSC03544" href="http://www.flickr.com/photos/27592284@N00/2684515200/">
            <img alt="DSC03544" src="http://static.flickr.com/3232/2684515200_1757ca08db.jpg" border="0" />
          </a>
          <a title="DSC03546" href="http://www.flickr.com/photos/27592284@N00/2683699589/">
            <img alt="DSC03546" src="http://static.flickr.com/3187/2683699589_a530504bbc.jpg" border="0" />
          </a>
          <a title="DSC03550" href="http://www.flickr.com/photos/27592284@N00/2683700011/">
            <img alt="DSC03550" src="http://static.flickr.com/2054/2683700011_9e864dce68.jpg" border="0" />
          </a>
          <a title="DSC03557" href="http://www.flickr.com/photos/27592284@N00/2684516548/">
            <img alt="DSC03557" src="http://static.flickr.com/3119/2684516548_3638ee3ca7.jpg" border="0" />
          </a>
        </p>
        <img width="0" height="0" src="http://blog.keithpatton.com/aggbug.ashx?id=c33215bd-2d73-4cc1-95f4-2a1ce2e100dd" />
      </body>
      <title>Christchurch Weekend</title>
      <guid isPermaLink="false">http://blog.keithpatton.com/PermaLink,guid,c33215bd-2d73-4cc1-95f4-2a1ce2e100dd.aspx</guid>
      <link>http://blog.keithpatton.com/2008/07/20/Christchurch+Weekend.aspx</link>
      <pubDate>Sun, 20 Jul 2008 04:24:11 GMT</pubDate>
      <description>&lt;p&gt;
Sorry lucy, no pictures of tommy as yet, here's some snaps of our weekend down at
christchurch/hamner springs. Will some trees do instead??
&lt;/p&gt;
&lt;p&gt;
&lt;a title="DSC03537" href="http://www.flickr.com/photos/27592284@N00/2684511768/"&gt;&lt;img alt="DSC03537" src="http://static.flickr.com/2222/2684511768_407574a3d5.jpg" border="0" /&gt;&lt;/a&gt;&lt;a title="DSC03538" href="http://www.flickr.com/photos/27592284@N00/2683696635/"&gt;&lt;img alt="DSC03538" src="http://static.flickr.com/3232/2683696635_f33d9a73f3.jpg" border="0" /&gt;&lt;/a&gt;&lt;a title="DSC03539" href="http://www.flickr.com/photos/27592284@N00/2683697485/"&gt;&lt;img alt="DSC03539" src="http://static.flickr.com/3185/2683697485_ae7e0f25a3.jpg" border="0" /&gt;&lt;/a&gt;&lt;a title="DSC03541" href="http://www.flickr.com/photos/27592284@N00/2683697829/"&gt;&lt;img alt="DSC03541" src="http://static.flickr.com/3031/2683697829_6cc01dfb9f.jpg" border="0" /&gt;&lt;/a&gt;&lt;a title="DSC03542" href="http://www.flickr.com/photos/27592284@N00/2684514450/"&gt;&lt;img alt="DSC03542" src="http://static.flickr.com/3220/2684514450_e687959228.jpg" border="0" /&gt;&lt;/a&gt;&lt;a title="DSC03544" href="http://www.flickr.com/photos/27592284@N00/2684515200/"&gt;&lt;img alt="DSC03544" src="http://static.flickr.com/3232/2684515200_1757ca08db.jpg" border="0" /&gt;&lt;/a&gt;&lt;a title="DSC03546" href="http://www.flickr.com/photos/27592284@N00/2683699589/"&gt;&lt;img alt="DSC03546" src="http://static.flickr.com/3187/2683699589_a530504bbc.jpg" border="0" /&gt;&lt;/a&gt;&lt;a title="DSC03550" href="http://www.flickr.com/photos/27592284@N00/2683700011/"&gt;&lt;img alt="DSC03550" src="http://static.flickr.com/2054/2683700011_9e864dce68.jpg" border="0" /&gt;&lt;/a&gt;&lt;a title="DSC03557" href="http://www.flickr.com/photos/27592284@N00/2684516548/"&gt;&lt;img alt="DSC03557" src="http://static.flickr.com/3119/2684516548_3638ee3ca7.jpg" border="0" /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://blog.keithpatton.com/aggbug.ashx?id=c33215bd-2d73-4cc1-95f4-2a1ce2e100dd" /&gt;</description>
      <comments>http://blog.keithpatton.com/CommentView,guid,c33215bd-2d73-4cc1-95f4-2a1ce2e100dd.aspx</comments>
      <category>Life in New Zealand;Travel</category>
    </item>
  </channel>
</rss>