<?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>Bri Manning&#039;s Blog &#187; ASP.NET</title>
	<atom:link href="http://brimanning.com/blog/category/asp-net/feed" rel="self" type="application/rss+xml" />
	<link>http://brimanning.com/blog</link>
	<description>A Developnerd&#039;s Take on Being Awesome</description>
	<lastBuildDate>Thu, 19 Jan 2012 15:15:30 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
		<item>
		<title>The Razor ASP.NET MVC Engine and Iterating Software</title>
		<link>http://brimanning.com/blog/razor-asp-net-mvc-iterating-software</link>
		<comments>http://brimanning.com/blog/razor-asp-net-mvc-iterating-software#comments</comments>
		<pubDate>Mon, 25 Apr 2011 12:56:34 +0000</pubDate>
		<dc:creator>Brian Manning</dc:creator>
				<category><![CDATA[ASP.NET]]></category>

		<guid isPermaLink="false">http://brimanning.com/blog/?p=249</guid>
		<description><![CDATA[The traditional bracket-style notation, originally inherited from classic ASP and in-line with the de facto standard of the day when embedding server-side code into HTML certainly served its purpose, but it quickly becomes apparent that it doesn't produce the most readable code.]]></description>
			<content:encoded><![CDATA[<p>I recently starting working on a project that uses the Razor rendering engine. While I had read about it and seen it before, I hadn&#8217;t actually used it full-time until this project.</p>
<p>My first real take-away is that it is simply a brilliant enhancement to embedding display code into your views. With the markup being clearly distinguishable from both HTML and JavaScript, the code is far more readable.</p>
<p>The traditional web forms bracket-style notation, originally inherited from classic ASP and in-line with the de facto standard of the day when embedding server-side code into HTML certainly served its purpose, but it quickly becomes apparent that it doesn&#8217;t produce the most readable code.</p>
<p>See Razor:</p>
<pre><code>&lt;a href="@Url.Action("Index", "Home")"&gt;
    &lt;img src="@Url.Content("~/Content/Images/logo.png")" alt=
        "Logo" /&gt;
&lt;/a&gt;
</code></pre>
<p>Versus Web Forms:</p>
<pre><code>&lt;a href='&lt;%= Url.Action("Index", "Home") %&gt;'&gt;
    &lt;img src=
        '&lt;%= Url.Content("~/Content/Images/logo.png") %&gt;'
        alt="Logo" /&gt;
&lt;/a&gt;
</code></pre>
<p>Thus, the Razor engine solves this problem and makes the front-end code easy to read and distinguish between HTML, JavaScript and server-side, embedded code.</p>
]]></content:encoded>
			<wfw:commentRss>http://brimanning.com/blog/razor-asp-net-mvc-iterating-software/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Tips on Beginning with Umbraco</title>
		<link>http://brimanning.com/blog/tips-on-beginning-with-umbraco</link>
		<comments>http://brimanning.com/blog/tips-on-beginning-with-umbraco#comments</comments>
		<pubDate>Wed, 27 Oct 2010 13:06:55 +0000</pubDate>
		<dc:creator>Brian Manning</dc:creator>
				<category><![CDATA[Umbraco]]></category>

		<guid isPermaLink="false">http://brimanning.com/blog/?p=169</guid>
		<description><![CDATA[I recently wrote an email to a colleague talking about some points in Umbraco, so I wanted to include some of that here.]]></description>
			<content:encoded><![CDATA[<p>I recently wrote an email to a colleague talking about some points in <a href="http://umbraco.org" title="Umbraco's Homepage">Umbraco</a>, so I wanted to include some of that here.</p>
<p>There are five main pieces to understand about <a href="http://brimanning.com/blog/category/asp-net/umbraco" title="My Posts About Umbraco">Umbraco</a>:</p>
<ul>
<li>Document Types (held in the database)</li>
<li>Macros (information is held in the database, but they live in usercontrols)</li>
<li>Fields (held in the database)</li>
<li>Templates (found in the masterpages directory)</li>
<li>Pages (held in the database)</li>
</ul>
<p>A page is what you would expect &#8211; a page that can be created in the CMS (in the Content section, right-click and Create). When you create a page, it has to be a certain document type. A document type can have one or more templates that can be used with it (the user has a choice) and different fields that can be filled out to be used on the front-end (text, images, etc).</p>
<p>In a template, you can choose which fields are displayed in the html (see areas like <code>&lt;umbraco:Item Field="text" stripParagraph="true" runat="server"&gt;&lt;/umbraco:Item&gt;</code> and <code>[#text]</code>).</p>
<p>Macros are really just custom user controls that can come in a variety of forms, for example a custom .Net control and can be added to a template like this:</p>
<p><code>&lt;umbraco:Macro Alias="MyWidget" runat="server" PassedValue="[#value]" SomethingElseToPass="true"&gt;&lt;/umbraco:Macro&gt;</code></p>
<p>These function as normal custom user controls (code-behind, etc). To get Umbraco to pass values (like &#8220;value&#8221;), you need to add that information about the macro under the Development section.</p>
<p>The database structure is not very clear, and I generally try to avoid it so I don&#8217;t mess things up. Another note is that Umbraco cannot be run in a virtual directory, so to do development, you need to set it as your root website.</p>
<p>So, in short, a Page has a Document Type, which gives a user a set of Templates to choose from and Fields to fill out, and the Template determines how those Fields are displayed and if/what Macros are used.</p>
]]></content:encoded>
			<wfw:commentRss>http://brimanning.com/blog/tips-on-beginning-with-umbraco/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>What Six Months Using Umbraco Has Taught Me</title>
		<link>http://brimanning.com/blog/six-months-using-umbraco</link>
		<comments>http://brimanning.com/blog/six-months-using-umbraco#comments</comments>
		<pubDate>Tue, 14 Sep 2010 03:09:50 +0000</pubDate>
		<dc:creator>Brian Manning</dc:creator>
				<category><![CDATA[Umbraco]]></category>

		<guid isPermaLink="false">http://brimanning.com/blog/?p=154</guid>
		<description><![CDATA[While there were bumps in the road to getting to know Umbraco, it's an incredibly useful and powerful CMS.]]></description>
			<content:encoded><![CDATA[<p>For a client, I&#8217;ve been using <a href="http://umbraco.org/">Umbraco</a> as a CMS for them and I wanted to chronicle some of the things I learned about it that were not obvious when I first started using it.</p>
<p><em>1. Umbraco cannot be run in a virtual directory.</em></p>
<p>This definitely becomes obvious after trying to install it, but was certainly the first hiccup I had with Umbraco. Certainly not a deal-breaker, and when combining that with <a href="http://www.isapirewrite.com/">Helicon Tech&#8217;s ISAPI_Rewrite</a>, ended up not being a problem in the slightest.</p>
<p><em>2. Umbraco&#8217;s document/database structure is non-obvious.</em></p>
<p>I definitely think the engineers over there are bright and did it the right way &#8211; it was just a more complex and abstract system than I was initially expecting. I don&#8217;t think it&#8217;s something they need to work on changing, but it was another hiccup I went through when I first started using Umbraco.</p>
<p><em>3. Umbraco creates a cache of pages when they are published.</em></p>
<p>When a page is called in Umbraco, most of the result is served directly from a cached XML file. Certainly was a great call performance-wise and makes sense, but it was not something I realized when I first set out with Umbraco.</p>
<p><em>4. Umbraco is simply incredibly powerful.</em></p>
<p>While all of the above might seem like I have reservations about Umbraco. In fact, quite the opposite. Sure, there were bumps in the road as I went along, but in the end, I came out liking Umbraco more and more as I got to know it better and use it more. It&#8217;s incredibly powerful and useful, from the template creation to embedding macros. Making changes and updates is far easier than I would have imagined and I cannot thank the Umbraco team enough.</p>
]]></content:encoded>
			<wfw:commentRss>http://brimanning.com/blog/six-months-using-umbraco/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Managing Web.configs for Multiple Environments</title>
		<link>http://brimanning.com/blog/manage-web-configs-environments</link>
		<comments>http://brimanning.com/blog/manage-web-configs-environments#comments</comments>
		<pubDate>Mon, 02 Nov 2009 03:00:43 +0000</pubDate>
		<dc:creator>Brian Manning</dc:creator>
				<category><![CDATA[ASP.NET]]></category>

		<guid isPermaLink="false">http://staging.brimanning.com/blog/?p=8</guid>
		<description><![CDATA[It can be tough managing multiple Web.configs for multiple environments.]]></description>
			<content:encoded><![CDATA[<p>
So, you&#8217;ve got your development environment, your QA environment and your production environment (at least!).  What about the different databases they connect to?  What about the different file paths or urls?
</p>
<p>
You don&#8217;t want a bunch of commented out sections of the config, that would be annoying, and you&#8217;d have to change them based on the environment.
</p>
<p>
What I like to do is rename the config based on the environment.  So you can have you Web.dev.config, Web.qa.config or Web.production.config or similar.  Simple as pie!  Sure maybe there are more files in svn, but you only have to remember to rename the file when you deploy (or have it be part of your automated deployment procedure), which is definitely easier than working within the file itself.</p>
]]></content:encoded>
			<wfw:commentRss>http://brimanning.com/blog/manage-web-configs-environments/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

