Profile picture Schedule a Meeting
c a n d l a n d . n e t

Writing

Setup N2Cms on an Asp.Net MVC

|

The following are my notes on setting up a n2cms site starting with a default MVC project and copying in the needed stuff from the Example_Mvc sample from the n2cms site. Starting with a new MVC site. Reference the dll’s in the \Example_...

Unit Testing NServiceBus Send Methods

|

Here’s a static method for helping test the Send calls when using NService Bus. It depends on RhinoMocks.   public static class BusExpectationExtensions {     public static IBus Exp...

Set Up Virtual Directories From The Build

|

Following up my previous post, an approach to extending msbuild, here’s what we ended up using to setup out web sites and services. We have a very service oriented architecture here and are starting to have a lot of web services that nee...

An Approach to Extending MSBuild

|

I’m working toward setting up a master build for our enterprise code using MSBuild. My first pass was to include a common build project in each of our csproj files. This was a bad idea for two reasons. One it’s a pain to update each csp...

Setting Up AutoMapper For Use From A Container

|

I like getting all my service from the container and I like using AutoMapper. So I added the AutoMapper to the container, a WindsorContainer in this case. The main interface is IMappingEngine, which is implemented by MappingEngine which ...

Testing Log4Net Output

|

We have a custom logging framework setup which is using log4net under the covers. When doing that the ILogger should be used, not the ILog. The ILogger sets up the correct Class information. Below is some code for testing the output from...

TDD Reduces Defects!

|

I just read Realizing quality improvement through test driven development. It’s a summary of 4 TDD teams at IBM and Microsoft compared to similar non TDD teams. With all the variables in any software project it’s hard to draw a hard conc...

Open VS2005 Project Files in VS2008

|

Here’s an interesting tip from a co worker. If you need to work on a 2005 project in both 2005 and 2008 you can add the following to the Project element: ToolsVersion=”3.5” Resulting in: " ToolsVersion="3.5">

Thanks to My Digital Life!

|

I now have Live Writer installed on my Windows Server 2003 machine. Thanks My Digital Life and Resource Hacker! Windows Live team, please change the Live Writer install.

What Tools I’m Currently Using

|

I setup a new machine this week, the machine was imaged with some of the obvious MS stuff, VS, Office, etc. I thought I'd note some of the apps I install right away. Things I know I'll need, most development related, some system related,...

More Effective C# Notes: Generics

|

I’ve been reading the More Effective C# book by Bill Wagner. I’m going to blog some of my notes and thoughts on the book. If you find some of this stuff useful you will want to pick up a copy of the book. Use the least amount of constrai...

Intro To Unit Testing: 2 of n

|

Where do tests fit into my project and process? There are a few ways to structure unit tests. Two of the most common seem to be one to one assemblies and same assembly. One to one assemblies meaning one test assembly for each assembly be...

Intro To Unit Testing: 1 of n

|

What is UnitTesting? What are UnitTests? UnitTesting is testing a unit of functionality with other code. UnitTests, in the context of c#, are simply classes with attributes. Usually they are called test fixtures which contain test cases....

Selecting Aggregate Data With Castle.ActiveRecord

|

Lets say your using Castle's ActiveRecord and you have a complex query to aggregate some data, but you want that query to return the data in a typed class, just not one that NHibernate or ActiveRecord know about... Here’s what I ended up...

IDictionary and the Brail View Engine

|

I spent a lot of time trying to figure out that the brail engine assumes IList on indexed properties. If you have a IDictionary you need to use the get_Item method like: ${notice.Params.get_Item("user").Value} Not: ${notice.Params["user...

Changes Needed for Castle.MonoRail to use jQuery

|

To get jQuery as the JS library for monorail I need to do the following: Get the JS files from jQuery and jQuery.Validation, save those to /Content/Js/ (or where ever). Implement the IMonoRailContainerEvents and IMonoRailConfiguratio...

Publishing video as FLV using a SWF Player

|

This task turned out to be much more complicated then I would have expected. First just creating the video took a fair amount of time, trial, and error. I used CamStudio to capture the screen video and then the trial of Video Editor 8. A...

Awesome Child Bike Seat – iBert [off topic]

|

This is off topic. We recently started using an iBert child seat to take our son on bike rides with us. It’s a front mounted seat, which makes it really easy to control the bike, plus the child gets a better view. Our son loves it and ev...

What’s Needed for Castle Validation To Work

|

Make sure the view knows what to validate The object or object type to be validated must be sent to the view. PropertyBag["signuptype"] = typeof(SignupInfo); // or PropertyBag["signup"] = new SignupInfo; Remember to use Flash if redirect...