<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Cottleston Pie</title>
	<atom:link href="http://fernandof.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://fernandof.wordpress.com</link>
	<description>Fernando Felman's thoughts on software development</description>
	<lastBuildDate>Sat, 14 Mar 2009 07:17:12 +0000</lastBuildDate>
	<generator>http://wordpress.com/</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<cloud domain='fernandof.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://www.gravatar.com/blavatar/55c5595ebd03da7d41f599bef221b633?s=96&#038;d=http://s.wordpress.com/i/buttonw-com.png</url>
		<title>Cottleston Pie</title>
		<link>http://fernandof.wordpress.com</link>
	</image>
			<item>
		<title>Code Generation, some announcements</title>
		<link>http://fernandof.wordpress.com/2009/03/10/code-generation-some-announcements/</link>
		<comments>http://fernandof.wordpress.com/2009/03/10/code-generation-some-announcements/#comments</comments>
		<pubDate>Tue, 10 Mar 2009 22:49:59 +0000</pubDate>
		<dc:creator>Fernando Felman</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://fernandof.wordpress.com/2009/03/10/code-generation-some-announcements/</guid>
		<description><![CDATA[there has been quite an uproar with code generations lately.
Two interesting announcements caught my attention. First, an announcement was made that the current asp.mvc uses the Visual Studio built-in T4 code generation to drive the scaffolding of the UI. That enables the modification of those templates to meet your unique requirements which is something I [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=fernandof.wordpress.com&blog=780295&post=98&subd=fernandof&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>there has been quite an uproar with code generations lately.</p>
<p>Two interesting announcements caught my attention. First, an announcement was made that the current asp.mvc uses the <a href="http://www.pnpguidance.net/Tag/T4.aspx">Visual Studio built-in T4 code generation</a> to <a href="http://davidhayden.com/blog/dave/archive/2009/03/10/ASPNETMVCScreencastCRUDT4TemplateCodeGeneration.aspx">drive the scaffolding of the UI</a>. That enables the modification of those templates to meet your unique requirements which is something I always wanted for the Proxy Generation of WCF.</p>
<p>Secondly, the <a href="http://sculpture.codeplex.com/">Sculpture project</a> reached version 1.0. This is a very interesting open source project for Model-Driven Development in .NET. In its core, it enables the usage of Molds to support different technologies throughout the range of layers. Here&#8217;s a list of Molds available to use in the latest version.</p>
<ul>
<li>Database: SQL Server only</li>
<li>Data Access Layer: NHibernate, SubSonic, CSLA and the Data Application Block</li>
<li>Service Layer: WCF, Web Services and &quot;just&quot; libraries</li>
<li>User Interface, a huge range of molds including Web (ASP and ASP MVC), Windows (Windows forms and WPF) and Silverlight</li>
</ul>
<p>This is an open source project, and with the notion of molds, I think that there&#8217;s huge potential for modifications and improvements, such as adding support for more databases. Definitely worth a closer look, and to start, I&#8217;d recommend watching the <a href="http://www.dawliasoft.com/Sculpture/Beta2/Intro-Part1">introduction video</a>.</p>
<p>&#160;</p>
<p>Code generation is not evil, but it has a risk of going extremely wrong. However, with added support from the development tool (e.g. partial classes) and much better tools out there, I think we ought to take a closer look into what code generations gives us. At the end of the day, if it reduces effort &amp; time, I&#8217;ll take it!</p>
<p>Now we only have to see and wait what will Oslo bring to the DDD table with its own capabilities of code generations and extensions&#8230; Existing times!</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/fernandof.wordpress.com/98/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/fernandof.wordpress.com/98/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/fernandof.wordpress.com/98/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/fernandof.wordpress.com/98/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/fernandof.wordpress.com/98/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/fernandof.wordpress.com/98/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/fernandof.wordpress.com/98/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/fernandof.wordpress.com/98/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/fernandof.wordpress.com/98/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/fernandof.wordpress.com/98/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=fernandof.wordpress.com&blog=780295&post=98&subd=fernandof&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://fernandof.wordpress.com/2009/03/10/code-generation-some-announcements/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/23a49330be38dff019d5dd43a37791a9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Fernando</media:title>
		</media:content>
	</item>
		<item>
		<title>Understanding performance considerations in SharePoint OM</title>
		<link>http://fernandof.wordpress.com/2009/03/05/understanding-performance-considerations-in-sharepoint-om/</link>
		<comments>http://fernandof.wordpress.com/2009/03/05/understanding-performance-considerations-in-sharepoint-om/#comments</comments>
		<pubDate>Thu, 05 Mar 2009 08:21:21 +0000</pubDate>
		<dc:creator>Fernando Felman</dc:creator>
				<category><![CDATA[Moss]]></category>

		<guid isPermaLink="false">http://fernandof.wordpress.com/2009/03/05/understanding-performance-considerations-in-sharepoint-om/</guid>
		<description><![CDATA[If you haven&#8217;t already, go read this article by Andreas Grabner explaining some technical details around the usage of the SharePoint Object Model and their impact on performance. I don&#8217;t expect nothing will be of great surprise for experienced MOSS developers, but the clarity in which the information is presented makes it a good source [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=fernandof.wordpress.com&blog=780295&post=97&subd=fernandof&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>If you haven&#8217;t already, go read <a href="http://www.infoq.com/articles/SharePoint-Andreas-Grabner">this article</a> by <strong>Andreas Grabner</strong> explaining some technical details around the usage of the SharePoint Object Model and their impact on performance. I don&#8217;t expect nothing will be of great surprise for experienced MOSS developers, but the clarity in which the information is presented makes it a good source of information for any level professional.</p>
<p>This is also a good opportunity to recommend the hosting site, <a href="http://www.infoq.com/">InfoQ</a>, which has a very good combination of articles, videos and other assets. The site focuses on everything software development: project management, architecture and development. I especially like the e-books and the videos from the <a href="http://www.qconlondon.com/">QCon</a> sessions (oh, I do hope to be able to attend next year!).</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/fernandof.wordpress.com/97/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/fernandof.wordpress.com/97/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/fernandof.wordpress.com/97/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/fernandof.wordpress.com/97/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/fernandof.wordpress.com/97/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/fernandof.wordpress.com/97/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/fernandof.wordpress.com/97/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/fernandof.wordpress.com/97/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/fernandof.wordpress.com/97/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/fernandof.wordpress.com/97/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=fernandof.wordpress.com&blog=780295&post=97&subd=fernandof&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://fernandof.wordpress.com/2009/03/05/understanding-performance-considerations-in-sharepoint-om/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/23a49330be38dff019d5dd43a37791a9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Fernando</media:title>
		</media:content>
	</item>
		<item>
		<title>C# version 4</title>
		<link>http://fernandof.wordpress.com/2008/12/04/c-version-4/</link>
		<comments>http://fernandof.wordpress.com/2008/12/04/c-version-4/#comments</comments>
		<pubDate>Thu, 04 Dec 2008 06:38:02 +0000</pubDate>
		<dc:creator>Fernando Felman</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[Future]]></category>

		<guid isPermaLink="false">http://fernandof.wordpress.com/2008/12/04/c-version-4/</guid>
		<description><![CDATA[Take a look at this early insight on what&#8217;s coming in C# 4.
I really like all of it, but that&#8217;s easy for me as I&#8217;m happy to see any extension added to the language. Well, as long as it keep the same &#34;feel&#34; of what we&#8217;re used to see in C# that it.
So, what we [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=fernandof.wordpress.com&blog=780295&post=96&subd=fernandof&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Take a look at this <a href="http://blogs.msdn.com/charlie/archive/2008/11/04/new-features-in-c-4-0-paper-plus-feedback-and-samples.aspx">early insight</a> on what&#8217;s <a href="http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=csharpfuture&amp;DownloadId=3550">coming in C# 4</a>.</p>
<p>I really like all of it, but that&#8217;s easy for me as I&#8217;m happy to see any extension added to the language. Well, as long as it keep the same &quot;feel&quot; of what we&#8217;re used to see in C# that it.</p>
<p>So, what we could be seeing from the C# team? A lot! </p>
<ul>
<li>Dynamic Language Runtime (DLR) to enable dynamic lookup (runtime invocation discovery &amp; binding). This feature will enable duck-typing, integration with dynamic languages and a much better COM integration experience. It&#8217;s planned to be delivered with an API to support custom bindings which can greatly improve injection scenarios such as IoC and Mockups. </li>
<li><a href="http://fernandof.wordpress.com/2007/03/04/variance-and-generalized-constraints-ms-research-publications/">Variance and Generalized Constraints</a> support for Generics to enable better inheritance options for generics. The nice thing here is the syntax that is dead simple and self-explanatory. </li>
<li>Optional and named arguments. Nice syntax candy. </li>
<li>Better COM integration. Many COM-based syntax candies can be delivered based on these new stuff. COM instances can be mapped to dynamic objects, thus enabling support to default methods and properties, and with optional arguments we can have real simple COM integration code. and here&#8217;s a good news to all of you Office automation developers &#8211; ref will not be required anymore! </li>
</ul>
<p>While on this topic, it&#8217;s also worth noticing another announcement from InfoQ around <a href="http://www.infoq.com/news/2008/11/Code-Contracts">C# to support code contracts</a> to enable declarative constraints for types. Think of the Validation Application Block from the source code itself.</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/fernandof.wordpress.com/96/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/fernandof.wordpress.com/96/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/fernandof.wordpress.com/96/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/fernandof.wordpress.com/96/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/fernandof.wordpress.com/96/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/fernandof.wordpress.com/96/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/fernandof.wordpress.com/96/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/fernandof.wordpress.com/96/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/fernandof.wordpress.com/96/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/fernandof.wordpress.com/96/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=fernandof.wordpress.com&blog=780295&post=96&subd=fernandof&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://fernandof.wordpress.com/2008/12/04/c-version-4/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/23a49330be38dff019d5dd43a37791a9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Fernando</media:title>
		</media:content>
	</item>
		<item>
		<title>The wind of change</title>
		<link>http://fernandof.wordpress.com/2008/12/02/the-wind-of-change/</link>
		<comments>http://fernandof.wordpress.com/2008/12/02/the-wind-of-change/#comments</comments>
		<pubDate>Tue, 02 Dec 2008 00:16:35 +0000</pubDate>
		<dc:creator>Fernando Felman</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://fernandof.wordpress.com/2008/12/02/the-wind-of-change/</guid>
		<description><![CDATA[A fellow colleague mentioned this ultra-cool data centre run by one of the largest ISP in Sweden. How cool is it, you ask? It&#8217;s this cool:

Yeah, very cool. But what&#8217;s even cooler is that people are finally changing the rather silly perception they have about IT professionals. I mean, will you be surprised to see [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=fernandof.wordpress.com&blog=780295&post=94&subd=fernandof&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>A <a href="http://blog.networkfoo.org/?p=253">fellow colleague</a> mentioned this <a href="http://royal.pingdom.com/2008/11/14/the-worlds-most-super-designed-data-center-fit-for-a-james-bond-villain/#">ultra-cool data centre</a> run by one of the largest ISP in Sweden. How cool is it, you ask? It&#8217;s this cool:</p>
<p><img title="Pionen data center" height="395" alt="" src="http://farm4.static.flickr.com/3235/3029540474_1970ff02b6_o.jpg" width="590" /></p>
<p>Yeah, very cool. But what&#8217;s even cooler is that people are finally changing the rather silly perception they have about IT professionals. I mean, will you be surprised to see decorations and non-practical wow-factors added to a museum or a musical hall? No, you&#8217;d actually expect it to be so. And why&#8217;s that? I think it&#8217;s because we have this perception about artists that they&#8217;ll appreciate or at least be more tuned to this kind of stuff. IT professionals are usually perceived as pragmatic, &quot;no nonsense&quot; people so why bother adding decorations and other non-practical stuff?</p>
<p>Well, I for one, am very happy this is changing!</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/fernandof.wordpress.com/94/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/fernandof.wordpress.com/94/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/fernandof.wordpress.com/94/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/fernandof.wordpress.com/94/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/fernandof.wordpress.com/94/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/fernandof.wordpress.com/94/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/fernandof.wordpress.com/94/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/fernandof.wordpress.com/94/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/fernandof.wordpress.com/94/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/fernandof.wordpress.com/94/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=fernandof.wordpress.com&blog=780295&post=94&subd=fernandof&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://fernandof.wordpress.com/2008/12/02/the-wind-of-change/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/23a49330be38dff019d5dd43a37791a9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Fernando</media:title>
		</media:content>

		<media:content url="http://farm4.static.flickr.com/3235/3029540474_1970ff02b6_o.jpg" medium="image">
			<media:title type="html">Pionen data center</media:title>
		</media:content>
	</item>
		<item>
		<title>The typealyzer &#8211; analysing personality of blogs</title>
		<link>http://fernandof.wordpress.com/2008/12/01/the-typealyzer-analysing-personality-of-blogs/</link>
		<comments>http://fernandof.wordpress.com/2008/12/01/the-typealyzer-analysing-personality-of-blogs/#comments</comments>
		<pubDate>Mon, 01 Dec 2008 02:30:32 +0000</pubDate>
		<dc:creator>Fernando Felman</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://fernandof.wordpress.com/2008/12/01/the-typealyzer-analysing-personality-of-blogs/</guid>
		<description><![CDATA[A fellow blogger mentioned the typealyzer service which auto-analyses personality of authors based on their blog. I ran it over several of my blog-rolls with quite amusing results. Anyhow, here&#8217;s what it found for my own:
INTJ &#8211; The Scientists

The long-range thinking and individualistic type. They are especially good at looking at almost anything and figuring [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=fernandof.wordpress.com&blog=780295&post=93&subd=fernandof&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>A fellow blogger mentioned the <a href="http://typealyzer.com/">typealyzer service</a> which auto-analyses personality of authors based on their blog. I ran it over several of my blog-rolls with quite amusing results. Anyhow, here&#8217;s what it found for my own:</p>
<blockquote><h4>INTJ &#8211; The Scientists</h4>
<p><img title="INTJ" src="http://www.typealyzer.com/images/INTJ.gif" /></p>
<p>The long-range thinking and individualistic type. They are especially good at looking at almost anything and figuring out a way of improving it &#8211; often with a highly creative and imaginative touch. They are intellectually curious and daring, but might be pshysically hesitant to try new things.      <br />The Scientists enjoy theoretical work that allows them to use their strong minds and bold creativity. Since they tend to be so abstract and theoretical in their communication they often have a problem communcating their visions to other people and need to learn patience and use conrete examples. Since they are extremly good at concentrating they often have no trouble working alone. </p>
</blockquote>
<p>How about yours? </p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/fernandof.wordpress.com/93/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/fernandof.wordpress.com/93/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/fernandof.wordpress.com/93/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/fernandof.wordpress.com/93/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/fernandof.wordpress.com/93/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/fernandof.wordpress.com/93/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/fernandof.wordpress.com/93/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/fernandof.wordpress.com/93/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/fernandof.wordpress.com/93/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/fernandof.wordpress.com/93/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=fernandof.wordpress.com&blog=780295&post=93&subd=fernandof&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://fernandof.wordpress.com/2008/12/01/the-typealyzer-analysing-personality-of-blogs/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/23a49330be38dff019d5dd43a37791a9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Fernando</media:title>
		</media:content>

		<media:content url="http://www.typealyzer.com/images/INTJ.gif" medium="image">
			<media:title type="html">INTJ</media:title>
		</media:content>
	</item>
		<item>
		<title>SharePoint integration in Visual Studio 10 (and my thoughts around their implied concepts)</title>
		<link>http://fernandof.wordpress.com/2008/11/27/sharepoint-integration-in-visual-studio-10-and-my-thoughts-around-their-implied-concepts/</link>
		<comments>http://fernandof.wordpress.com/2008/11/27/sharepoint-integration-in-visual-studio-10-and-my-thoughts-around-their-implied-concepts/#comments</comments>
		<pubDate>Thu, 27 Nov 2008 03:07:52 +0000</pubDate>
		<dc:creator>Fernando Felman</dc:creator>
				<category><![CDATA[Architecture]]></category>
		<category><![CDATA[Moss]]></category>

		<guid isPermaLink="false">http://fernandof.wordpress.com/?p=89</guid>
		<description><![CDATA[Visual Studio General Manager, Jason Zander&#8217;s, revealed some very interesting announcements around the expected capabilities of Visual Studio 2010 and MOSS at TechEd EMEA 2008. I think this is very much in alignment to an implicit approach Microsoft is shifting to: enabling software development at an architecture and enterprise level, both in more general &#8220;tradition&#8221; [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=fernandof.wordpress.com&blog=780295&post=89&subd=fernandof&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Visual Studio General Manager, <a href="http://blogs.msdn.com/jasonz/default.aspx">Jason Zander&#8217;s</a>, revealed some very interesting <a href="http://blogs.msdn.com/jasonz/archive/2008/11/10/teched-emea-2008-keynote-including-sharepoint-tools-for-vs.aspx">announcements around the expected capabilities of Visual Studio 2010 and MOSS at TechEd EMEA 2008</a>. I think this is very much in alignment to an implicit approach Microsoft is shifting to: enabling software development at an architecture and enterprise level, both in more general &#8220;tradition&#8221; areas but also specifically in SharePoint.</p>
<p>Microsoft launched the <a href="http://msdn.microsoft.com/en-us/practices/default.aspx">Patterns &amp; Practices group</a> for quite a while ago and this group is doing an excellent job enabling architects to develop repeatable-successful solutions using the Microsoft.NET Framework. The group provides reusable artifacts such as the application blocks and design patterns to leverage collective knowledge in order to enable predictable outcomes. In my opinion, this is essential when dealing with enterprise-level applications.</p>
<p>Relying on this managed knowledge means that architects can adhere to successful patterns when handling the overarching concerns of the solutions: we get answers on how to plan for a solution, what products to use, how to provide a build-cycle and what not. And, and this is most important, we are used to this richness of information. We depend on it.</p>
<p>However, when we leave the world of &#8220;traditional&#8221; technology, RIA, Web Site, Rich Client, Service, etc and we enter the world of Knowledge Management through SharePoint, we suddenly lose out trusty partner. We no longer use application blocks for developing web parts, we do not know how to make our solution testable, and we have to create our own methodology. In essence, we no longer leverage the collective knowledge. Now, you might argue that we have many reusable web parts and heaps of self-proclaimed &#8220;best practices&#8221; books but almost all of them deal with the technicality of SharePoint solutions, not the bigger picture of solution architecture.</p>
<p>Or at least that was the case in the past. Not so long ago the P&amp;P group released the <a href="http://www.codeplex.com/spg">SharePoint Guidance</a> presumably to bridge that gap, and that&#8217;s a good starting. Though I see there are many gaps and holes, especially when you try to bind it with the current <a href="http://www.codeplex.com/AppArch">Architecture Guide</a>, I think this demonstrates a shift in the approach Microsoft is taking for SharePoint, an approach whose goal is to enable software development at an architecture and enterprise level, especially for SharePoint.</p>
<p>So, going back to the announcements Jason did &#8211; I think that these new capabilities in Visual Studio 10 is just another such effort from Microsoft to enable a full software development lifecycle and the VS tool aims to cover the development aspects of it e.g. these capabilities enable multi-members teams working on the same SharePoint solution.</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/fernandof.wordpress.com/89/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/fernandof.wordpress.com/89/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/fernandof.wordpress.com/89/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/fernandof.wordpress.com/89/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/fernandof.wordpress.com/89/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/fernandof.wordpress.com/89/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/fernandof.wordpress.com/89/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/fernandof.wordpress.com/89/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/fernandof.wordpress.com/89/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/fernandof.wordpress.com/89/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=fernandof.wordpress.com&blog=780295&post=89&subd=fernandof&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://fernandof.wordpress.com/2008/11/27/sharepoint-integration-in-visual-studio-10-and-my-thoughts-around-their-implied-concepts/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/23a49330be38dff019d5dd43a37791a9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Fernando</media:title>
		</media:content>
	</item>
		<item>
		<title>Unit Testing ShrePoint-Based Solutions Made Easy</title>
		<link>http://fernandof.wordpress.com/2008/11/24/unit-testing-shrepoint-based-solutions-made-easy/</link>
		<comments>http://fernandof.wordpress.com/2008/11/24/unit-testing-shrepoint-based-solutions-made-easy/#comments</comments>
		<pubDate>Mon, 24 Nov 2008 22:28:44 +0000</pubDate>
		<dc:creator>Fernando Felman</dc:creator>
				<category><![CDATA[Moss]]></category>

		<guid isPermaLink="false">http://fernandof.wordpress.com/?p=85</guid>
		<description><![CDATA[This is a real candy: Typemock released a mockup solution for SharePoint enabling unit test while removing the SharePoint dependency. Go check it out!
Or using their own word&#8230;.
Typemock are offering their new product for unit testing SharePoint called Isolator For SharePoint, for a special introduction price. it is the only tool that allows you to [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=fernandof.wordpress.com&blog=780295&post=85&subd=fernandof&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>This is a real candy: <a href="http://typemock.com/">Typemock</a> released a mockup solution for SharePoint enabling unit test while removing the SharePoint dependency. Go check it out!</p>
<p>Or using their own word&#8230;.</p>
<p>Typemock are offering their new product for <a href="http://www.typemock.com/sharepointpage.php?utm_source=sp_bb&amp;utm_medium=blog_4sp&amp;utm_campaign=sp_bb">unit testing SharePoint</a> called Isolator For SharePoint, for a special introduction price. it is the only tool that allows you to <a href="http://blog.typemock.com/2008/11/newisolatorforsharepointtoolforunittest.html?utm_source=typeblog&amp;utm_medium=sp_bb&amp;utm_campaign=typeblog">unit test SharePoint</a> without a SharePoint server. To learn more <a href="http://www.typemock.com/sharepointpage.php?utm_source=sp_bb&amp;utm_medium=blog_4sp&amp;utm_campaign=sp_bb">click here</a>.   <strong>The first 50 bloggers </strong>who blog this text in their blog and tell us about it, will get <span style="color:#ff0000;">a Full Isolator license, Free</span>. for rules and info <a href="http://blog.typemock.com/2008/11/newisolatorforsharepointtoolforunittest.html">click here</a>.</p>
<p>I know from my experience unit testing in SharePoint-based solution is a pain so I&#8217;ll be difinitely checking it out.</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/fernandof.wordpress.com/85/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/fernandof.wordpress.com/85/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/fernandof.wordpress.com/85/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/fernandof.wordpress.com/85/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/fernandof.wordpress.com/85/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/fernandof.wordpress.com/85/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/fernandof.wordpress.com/85/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/fernandof.wordpress.com/85/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/fernandof.wordpress.com/85/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/fernandof.wordpress.com/85/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=fernandof.wordpress.com&blog=780295&post=85&subd=fernandof&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://fernandof.wordpress.com/2008/11/24/unit-testing-shrepoint-based-solutions-made-easy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/23a49330be38dff019d5dd43a37791a9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Fernando</media:title>
		</media:content>
	</item>
		<item>
		<title>Visual Studio extensions for Windows SharePoint Services v1.1</title>
		<link>http://fernandof.wordpress.com/2008/02/12/visual-studio-extensions-for-windows-sharepoint-services-v11/</link>
		<comments>http://fernandof.wordpress.com/2008/02/12/visual-studio-extensions-for-windows-sharepoint-services-v11/#comments</comments>
		<pubDate>Tue, 12 Feb 2008 00:29:15 +0000</pubDate>
		<dc:creator>Fernando Felman</dc:creator>
				<category><![CDATA[Moss]]></category>
		<category><![CDATA[VS2005]]></category>

		<guid isPermaLink="false">http://fernandof.wordpress.com/?p=80</guid>
		<description><![CDATA[Funny, just as I publish the how to install VSeWSS on a workstation, the good guys from Redmond announced the new version. Main changes that I&#8217;m keen to investigate: bug fixes and features support. You can download the new version from here which now also comes with a user guide.  Just like the previous [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=fernandof.wordpress.com&blog=780295&post=80&subd=fernandof&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Funny, just as I publish the <a href="http://fernandof.wordpress.com/2008/02/11/how-to-install-the-sharepoint-2007-vs-2005-extensions-on-a-workstation/" title="http://fernandof.wordpress.com/2008/02/11/how-to-install-the-sharepoint-2007-vs-2005-extensions-on-a-workstation/">how to install VSeWSS on a workstation</a>, the good guys from Redmond announced <a href="http://blogs.msdn.com/sharepoint/default.aspx" title="Announcing the Final Release of VSeWSS 1.1 (and the upcoming version 1.2)!">the new version</a>. Main changes that I&#8217;m keen to investigate: bug fixes and features support. You can download the new version from <a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=3e1dcccd-1cca-433a-bb4d-97b96bf7ab63&amp;displaylang=en" title="Windows SharePoint Services 3.0 Tools: Visual Studio 2005 Extensions, Version 1.1">here</a> which now also comes with a <a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=A8A4E775-074D-4451-BE39-459921F79787&amp;displaylang=en" title="Windows SharePoint Services 3.0 Tools: Visual Studio 2005 Extensions User Guide, Version 1.1">user guide</a>.  Just like the previous version, you should install this new extensions on a local SharePoint machine. That is, unless you feel like hacking it. <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>And while we&#8217;re on the subject of MOSS, check out <a href="http://channel9.msdn.com/ShowPost.aspx?PostID=382063#382063" title="Introduction to the OBA Composition Reference Toolkit">Javed Sikander&#8217;s video on  OBA Composition Reference Toolkit on Channel 9</a>. I&#8217;d really like to see where this thing is going to be in, say, another 2-3 months. I think it really has the potential of bringing forward the biggest advantage of MOSS which, in opinion, is a rich platform for custom collaboration solutions. This toolkit is a huge step towards implementing the concepts I&#8217;m used to see from the patterns &amp; practices group to match the SharePoint development world. Very cool.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/fernandof.wordpress.com/80/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/fernandof.wordpress.com/80/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/fernandof.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/fernandof.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/fernandof.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/fernandof.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/fernandof.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/fernandof.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/fernandof.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/fernandof.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/fernandof.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/fernandof.wordpress.com/80/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=fernandof.wordpress.com&blog=780295&post=80&subd=fernandof&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://fernandof.wordpress.com/2008/02/12/visual-studio-extensions-for-windows-sharepoint-services-v11/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/23a49330be38dff019d5dd43a37791a9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Fernando</media:title>
		</media:content>
	</item>
		<item>
		<title>How to install the SharePoint 2007 VS 2005 Extensions on a Workstation</title>
		<link>http://fernandof.wordpress.com/2008/02/11/how-to-install-the-sharepoint-2007-vs-2005-extensions-on-a-workstation/</link>
		<comments>http://fernandof.wordpress.com/2008/02/11/how-to-install-the-sharepoint-2007-vs-2005-extensions-on-a-workstation/#comments</comments>
		<pubDate>Mon, 11 Feb 2008 01:05:19 +0000</pubDate>
		<dc:creator>Fernando Felman</dc:creator>
				<category><![CDATA[.Net v2]]></category>
		<category><![CDATA[Moss]]></category>
		<category><![CDATA[VS2005]]></category>

		<guid isPermaLink="false">http://fernandof.wordpress.com/?p=79</guid>
		<description><![CDATA[SharePoint 2007, or MOSS, is a server product and as such it can only be installed on the Windows Server family platform. I can understand that, it makes sense. What I can&#8217;t understand and doesn&#8217;t make any sense at all is that I&#8217;m not allowed to install the development tools on my new shiny Vista.
The [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=fernandof.wordpress.com&blog=780295&post=79&subd=fernandof&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>SharePoint 2007, or MOSS, is a server product and as such it can only be installed on the Windows Server family platform. I can understand that, it makes sense. What I can&#8217;t understand and doesn&#8217;t make any sense at all is that I&#8217;m not allowed to install the development tools on my new shiny Vista.</p>
<p>The recommendation for MOSS development was always to get a VM to run W2k3 with MOSS and Visual Studio. That&#8217;s all fine when you&#8217;ve to develop and do cycles of compile-deploy-debug, but what if you want to load an existing web part project with the visual studio installed on your workstation?</p>
<p>If you try to install the Visual Studio 2005 Extensions for Windows SharePoint Services 3.0 Tools (VSeWSS) on a workstation you&#8217;d probably fail and get the following error: &#8220;This product can only be installed if Windows SharePoint Services 3.0 has been installed first&#8221;. So the only thing we&#8217;ve to do is to hack the installer into thinking MOSS is installed. How difficult can it be, right?</p>
<p>Before continuing into opening the Regedit tool, be aware that mocking around with the Windows registry is not supported, not recommended and generally considered bad manners.</p>
<p>Now open the regedit and create the following keys and the string value:</p>
<pre>[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Shared Tools\Web Server Extensions\12.0]

"Sharepoint"="Installed"</pre>
<p>That&#8217;s it! You have fooled the installer into running on a workstation. Easy. I also recommend adding the core SharePoint assemblies into the CAG using gacutil. Those assemblies can be found by default in any ShaerPoint machine under the folder: C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\ISAPI.</p>
<p>If you&#8217;re feeling adventurous enough and want to get the full remote debugging experience, try out this excellent <a href="http://blogs.msdn.com/martinv/archive/2007/08/23/remote-webpart-development-for-moss-2007.aspx" title="Remote WebPart Development for MOSS 2007">Martin Vollmer&#8217;s post</a>.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/fernandof.wordpress.com/79/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/fernandof.wordpress.com/79/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/fernandof.wordpress.com/79/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/fernandof.wordpress.com/79/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/fernandof.wordpress.com/79/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/fernandof.wordpress.com/79/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/fernandof.wordpress.com/79/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/fernandof.wordpress.com/79/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/fernandof.wordpress.com/79/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/fernandof.wordpress.com/79/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/fernandof.wordpress.com/79/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/fernandof.wordpress.com/79/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=fernandof.wordpress.com&blog=780295&post=79&subd=fernandof&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://fernandof.wordpress.com/2008/02/11/how-to-install-the-sharepoint-2007-vs-2005-extensions-on-a-workstation/feed/</wfw:commentRss>
		<slash:comments>23</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/23a49330be38dff019d5dd43a37791a9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Fernando</media:title>
		</media:content>
	</item>
		<item>
		<title>HOW TO: Check the Type of a COM Object (System.__ComObject) with Visual C# .NET</title>
		<link>http://fernandof.wordpress.com/2008/02/05/how-to-check-the-type-of-a-com-object-system__comobject-with-visual-c-net/</link>
		<comments>http://fernandof.wordpress.com/2008/02/05/how-to-check-the-type-of-a-com-object-system__comobject-with-visual-c-net/#comments</comments>
		<pubDate>Tue, 05 Feb 2008 14:13:57 +0000</pubDate>
		<dc:creator>Fernando Felman</dc:creator>
				<category><![CDATA[.Net v2]]></category>
		<category><![CDATA[Samples]]></category>
		<category><![CDATA[VS2005]]></category>
		<category><![CDATA[vs2003]]></category>

		<guid isPermaLink="false">http://fernandof.wordpress.com/?p=77</guid>
		<description><![CDATA[This one is a favourite of mine since I tried to resolve it in the past with no success.
The problem at hand is that we have a COM object o returned from Excel interop and we have to figure out what underlying interface it implements. If you try to use GetType() you&#8217;ll get a __ComObject [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=fernandof.wordpress.com&blog=780295&post=77&subd=fernandof&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>This one is a favourite of mine since I tried to resolve it in the past with no success.</p>
<p>The problem at hand is that we have a COM <i>object o</i> returned from Excel interop and we have to figure out what underlying interface it implements. If you try to use <i>GetType()</i> you&#8217;ll get a <i>__ComObject</i> which does not provide any helpful information as to what underlying types are implemented by the object.</p>
<p>The following KB article sheds some light: <a href="http://support.microsoft.com/kb/320523" title="Check the Type of a COM Object (System.__ComObject) with Visual C# .NET" target="_blank">http://support.microsoft.com/kb/320523</a>. The suggested way in the article is to manually cast the object to any known type using the <i>as</i> directive and if a valid object is returned &#8211; that type is implemented by the object. This solution will work, but it&#8217;s utterly ugly and requires vast amounts of typing in order to support all the possible types. I needed to implement something similar without using manual casting, essentially I needed a method that receives a COM object (of the type <i>__ComObject, </i>assuming it was created by the Excel interop) and returns the underlying interface supported by that object.</p>
<p>First I thought to somehow ask the object to provide me with a list of implemented interfaces. Something like the <i>System.Type.GetInterfaces</i> method. The problem is that the type of the object does not expose any useful information and the object itself has no typed class, so that proved to be futile.</p>
<p>Then I thought that instead of getting the implemented types from the object, I can query all the existing types one by one. Sure, it&#8217;s not as pretty as the previous path but that&#8217;s actually how COM works by design. Every COM class implements the <i>IUknown</i> interface which supports the <i>QueryInterface</i> method used to get a pointer to where an interface is implemented in the class. The idea is that all the information about what methods are supported by the interfaces and what interfaces are implemented by a type should be acquired in advance and coded into the caller (IDL, TLB and h files comes in mind). There was no true run-time reflection in the old COM days.</p>
<p>.NET supports COM by means of interoperability proxies. I won&#8217;t get into <a href="http://msdn2.microsoft.com/en-us/library/aa645736(vs.71).aspx" title="C# Client Tutorial" target="_blank">too</a> <a href="http://blogs.msdn.com/mbend/default.aspx" title="Mason Bendixen's COM Interop Notes" target="_blank">many</a> <a href="http://msdn2.microsoft.com/en-us/library/bd9cdfyx.aspx" title="Advanced COM Interoperability" target="_blank">details</a>, but basically you get .NET objects typed as <i>__ComObject</i> mapping COM instances and .NET interfaces with some unique attributes mapping COM interfaces. More to the point, you get the <i>System.Runtime.InteropServices.Marshal</i> class to handle all bunch of COM and interop operations such as calling the <i>QueryInterface</i> method on a .NET object mapped to a COM instance.</p>
<p>So now we know that we can query interop interfaces against the object. Sweet. But in order to do that we need the Interface ID, or iid, which is the GUID identifying an interface in COM. Oh, and we need that for each end every COM interface implemented by the Excel interop. Not sweet. OK, but we&#8217;re in .NET world now (thanks to the <i>System.Runtime.InteropServices</i> namespace) which has great support for runtime reflection. How difficult would it be to enumerate all the COM interfaces implemented by the Excel interop? Not too difficult really, we can use the <i>System.Reflection.Assembly</i> class to get a handler to the Excel interop assembly and from there it&#8217;s relatively easy going.</p>
<p>So let&#8217;s conclude what we need:</p>
<ol>
<li>Get all the COM interface types exposed by the Excel interop assembly.</li>
<li>Fetch the Interface ID of each type and use it on <i>QueryInterface</i> to test whether an interface is implemented by the object (if a valid pointer is returned, the interface is implemented by the object).</li>
</ol>
<p>This doesn&#8217;t sound too complicated. Obviously there are some syntax and plumbing issues to address, but the concept is rather simple. Good, let&#8217;s implement it:</p>
<p><a href="http://fernandof.wordpress.com/2008/02/05/how-to-check-the-type-of-a-com-object-system__comobject-with-visual-c-net/getexceltypeforcomobject-method/" rel="attachment wp-att-78" title="GetExcelTypeForComObject method"><img src="http://fernandof.files.wordpress.com/2008/02/getexceltypeforcomobject.png" alt="GetExcelTypeForComObject method" /></a></p>
<p>Namespaces:<br />
using Excel = Microsoft.Office.Interop.Excel;<br />
using interop = System.Runtime.InteropServices;</p>
<p>Note that in many cases a wrapped COM object implements many interfaces, so breaking after the first implemented interface is found might not do it for you&#8230;</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/fernandof.wordpress.com/77/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/fernandof.wordpress.com/77/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/fernandof.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/fernandof.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/fernandof.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/fernandof.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/fernandof.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/fernandof.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/fernandof.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/fernandof.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/fernandof.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/fernandof.wordpress.com/77/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=fernandof.wordpress.com&blog=780295&post=77&subd=fernandof&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://fernandof.wordpress.com/2008/02/05/how-to-check-the-type-of-a-com-object-system__comobject-with-visual-c-net/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/23a49330be38dff019d5dd43a37791a9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Fernando</media:title>
		</media:content>

		<media:content url="http://fernandof.files.wordpress.com/2008/02/getexceltypeforcomobject.png" medium="image">
			<media:title type="html">GetExcelTypeForComObject method</media:title>
		</media:content>
	</item>
	</channel>
</rss>