Archive For The “Deployment” Category

SqlDropDatabase, SqlCreateDatabase MSBuild tasks

When working with SQL, I often find I need to quickly spin up/tear down local developer database instances – for example, setting up a clean environment for integration tests on the build server, or blowing away test data. To help make this easier, here are a couple of MSBuild tasks I wrote that allow you […]

Read more »

The road to automated database deployment

Working in an agile team means delivering software early and often — several times a day even. The only way to achieve this without going crazy doing releases all the time is to eliminate all the manual steps in your release process, until you’re leave with a single mouse-click to get your code into to […]

Read more »

IIS vs a Windows Service: some important considerations

Can’t decide whether to host your WCF service in IIS or a Windows Service? Consider the additional steps you’ll need to perform, explain, troubleshoot, and write documentation for if you follow the IIS route: Ensure IIS is installed. Run aspnet_regiis -i to install .NET ISAPI module. Run ServiceModelReg –i to install handlers for *.svc file […]

Read more »

Merge redundant assemblies

Lately I have become a big opponent of a popular anti-pattern: people insisting on splitting up their application tiers/layers into 5-10 separate Visual Studio projects and adding references between them. Double that number of projects if you want corresponding unit test project for each layer. In fact, removing them has become one of the first […]

Read more »

Do you produce useful exception messages?

Here is a method for adding a new Employee to a database: Here is the same method again, but this time we have vastly improved it, by adding some useful error messages: Why is this such a vast improvement? Good error messages won’t help deliver features faster or make your tests green. But they will […]

Read more »