<?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/"
	>

<channel>
	<title>PhatBoyG.com &#187; Castle Project</title>
	<atom:link href="http://blog.phatboyg.com/category/castle-project/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.phatboyg.com</link>
	<description>Software Architecture, .NET, SOA</description>
	<lastBuildDate>Fri, 02 Jul 2010 02:08:16 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Dependency Injection with Castle Windsor</title>
		<link>http://blog.phatboyg.com/2007/10/27/dependency-injection-with-castle-windsor/</link>
		<comments>http://blog.phatboyg.com/2007/10/27/dependency-injection-with-castle-windsor/#comments</comments>
		<pubDate>Sat, 27 Oct 2007 21:12:13 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Castle Project]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://blog.phatboyg.com/2007/10/27/dependency-injection-with-castle-windsor/</guid>
		<description><![CDATA[I&#8217;m writing a presentation on dependency injection with Castle Windsor to give at work this coming week. I&#8217;m going to present it at a lunch and learn for the software developers in our department. It should be interesting, I&#8217;m curious to see how it goes. If all goes well, it will be the first of [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m writing a presentation on dependency injection with Castle Windsor to give at work this coming week. I&#8217;m going to present it at a lunch and learn for the software developers in our department. It should be interesting, I&#8217;m curious to see how it goes. If all goes well, it will be the first of a series that I&#8217;m going to put together.</p>
<p>Once I have the content and have run through it, I&#8217;ll post the samples and text here for everyone to enjoy. While it is introductory in terms of DI/IoC, it&#8217;s a fairly advanced topic compared to general programming topics. Should be fun!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.phatboyg.com/2007/10/27/dependency-injection-with-castle-windsor/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Friday Ramble</title>
		<link>http://blog.phatboyg.com/2007/09/14/friday-ramble/</link>
		<comments>http://blog.phatboyg.com/2007/09/14/friday-ramble/#comments</comments>
		<pubDate>Fri, 14 Sep 2007 17:31:51 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Apple]]></category>
		<category><![CDATA[Castle Project]]></category>
		<category><![CDATA[Electronica]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[Music]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[TeamFortress2]]></category>
		<category><![CDATA[Video Games]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://blog.phatboyg.com/2007/09/14/friday-ramble/</guid>
		<description><![CDATA[Wow, today is going to be a long one. Last night, I went to see EOTO play. EOTO is a spin-off of the now defunct String Cheese Incident. It was a solid 2-hour techno show, but not the hard house or trance that I&#8217;ve heard so much about. It was more trip-hop or something like [...]]]></description>
			<content:encoded><![CDATA[<p>Wow, today is going to be a long one. Last night, I went to see <a href="http://www.myspace.com/eotomusic">EOTO</a> play. EOTO is a spin-off of the now defunct <a href="http://www.stringcheeseincident.com/">String Cheese Incident</a>. It was a solid 2-hour techno show, but not the hard house or trance that I&#8217;ve heard so much about. It was more trip-hop or something like that, very cool stuff. The drummer played for two hours straight without a break &#8212; pretty wild.</p>
<p>The <a href="http://www.apple.com/macbookpro/">MacBook Pro</a> continues to evolve. Post <a href="http://www.vmware.com/products/fusion/">Fusion</a> install I&#8217;ve gotten all my development tools installed, including <a href="http://www.jetbrains.com/resharper/">Resharper</a>, <a href="http://testdriven.net/">TestDriven.NET</a>, <a href="http://tortoisesvn.tigris.org/">TortoiseSVN</a>, and <a href="http://nant.sourceforge.net/">NAnt</a>. So far everything seems to be working great. I&#8217;ve yet to install <a href="http://www.microsoft.com/powershell">PowerShell</a> (so I can have my NIX command-line goodness for the Windows box). I pulled down the trunk of <a href="http://www.castleproject.org/">Castle</a> and got it to build as well. I had to create the Test &amp; Test2 databases on my local instance of SQL Server 2005 in order for all the tests to complete.</p>
<p>It looks like I&#8217;ll be giving a presentation on MonoRail at the <a href="http://www.tulsatechfest.com/">TulsaTechFest 2007</a>. It will be an introduction to building a web site using MonoRail and <a href="http://wiki.castleproject.org/index.php/MonoRail:Brail">Brail</a>. MonoRail is part of the Castle Project and provides a <a href="http://java.sun.com/blueprints/patterns/MVC.html">MVC</a> (model-view-controller) framework within ASP.NET. MVC is a solid pattern for building web applications that is a significant improvement over the page-based WebForms model. MonoRail embraces web standards allows applications to be built based on controller logic and helps facilitate the separation of concerns. It&#8217;s good stuff, I can&#8217;t wait ot talk about it.</p>
<p>Did I mention that I&#8217;m old and staying out until 2 AM at a live show is painful the next day? Where is the Tylenol again? Strange that I can stay up until 3 AM playing with a new computer and not feel fried the next day but this was&#8230; different.</p>
<p>Oh yeah, <a href="http://storefront.steampowered.com/v/index.php?area=game&amp;AppId=3483">Peggle Extreme</a> is part of the pre-order package for <a href="http://orange.half-life2.com/tf2.html">TeamFortress2</a> on Steam. I highly recommend it as a fun diversion! Speaking of TF2, I&#8217;m all set for the beta that starts on Monday. I can&#8217;t wait to play the game, I hope for some cool in-game video recording (with <a href="http://www.fraps.com/">FRAPS</a> or otherwise) next week. I wonder if voice-chat is built into the game? Things I don&#8217;t know &#8212; they are plentiful today it seems.</p>
<p>I got my <a href="http://www.apple.com/iphone/storecredit/">iPhone store credit</a>, $100, fast and easy from Apple. I guess this means a trip to the <a href="http://www.apple.com/retail/">Apple store</a> is coming soon.</p>
<p>Oh, and today&#8217;s post is an experiment in link diarrhea to see how long it takes this post to go up!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.phatboyg.com/2007/09/14/friday-ramble/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Castle.Windsor and Generics</title>
		<link>http://blog.phatboyg.com/2007/09/06/castlewindsor-and-generics/</link>
		<comments>http://blog.phatboyg.com/2007/09/06/castlewindsor-and-generics/#comments</comments>
		<pubDate>Thu, 06 Sep 2007 19:42:24 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Castle Project]]></category>

		<guid isPermaLink="false">http://blog.phatboyg.com/2007/09/06/castlewindsor-and-generics/</guid>
		<description><![CDATA[Don&#8217;t you just love great documentation? Hey, it&#8217;s a work in progress&#8230; In digging to figure out how to use a generic data access interface with specific implementations through Castle.Windsor, I came up with the following. In the configuration file, you specify something like this: &#60;componentid=&#8221;MyAssembly.MyObjectDataAccess&#8221;service=&#8221;MyAssembly.IGenericDataAccess`2[[MyAssembly.MyObject, MyAssembly],[System.Int32]], MyAssembly&#8221;type=&#8221;MyAssembly.GenericDataAccess`2[[MyAssembly.MyObject, MyAssembly],[System.Int32]], MyAssembly&#8221;&#62;&#60;/component&#62; Once you have that, you [...]]]></description>
			<content:encoded><![CDATA[<p>Don&#8217;t you just love great documentation? Hey, it&#8217;s a work in progress&#8230;</p>
<p>In digging to figure out how to use a generic data access interface with specific implementations through Castle.Windsor, I came up with the following. </p>
<p>In the configuration file, you specify something like this:</p>
<p>&lt;component<br />id=&#8221;MyAssembly.MyObjectDataAccess&#8221;<br />service=&#8221;MyAssembly.IGenericDataAccess`2[[MyAssembly.MyObject, MyAssembly],[System.Int32]], MyAssembly&#8221;<br />type=&#8221;MyAssembly.GenericDataAccess`2[[MyAssembly.MyObject, MyAssembly],[System.Int32]], MyAssembly&#8221;&gt;<br />&lt;/component&gt;</p>
<p>Once you have that, you can request that type from the container by asking:</p>
<p>IGenericDataAccess&lt;MyObject,int&gt; dao = Container.Resolve&lt;IGenericDataAccess&lt;MyObject,int&gt;&gt;();</p>
<p>Of course, you could always override that implementation with a custom class for specialized extensions to the IGenericDataAccess interface. This seems to work pretty well, and avoids defining a class and interface for each and every data type in our system (there are a <strong>lot</strong> of them). I guess it would be cleaner to simply define the interface and class in code now that I think about it.</p>
<p>Another thing, if you are stuck trying to figure out the type name to put in the configuration, write a quick test that does the following:</p>
<p>GenericDataAccess&lt;MyObject, int&gt; dao = new GenericDataAccess&lt;MyObject, int&gt;(); <br />string aqn = dao.GetType().AssemblyQualifiedName;</p>
<p>That will give you the full .NET style name for the class that you can put into the configuration.</p>
<p>Thoughts?</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.phatboyg.com/2007/09/06/castlewindsor-and-generics/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
