12 August, 2008. It was a Tuesday. A question came up on the ALT.NET message board asking whether Value Objects should be used across service boundaries. Of course, the conversation took several ...
13 October, 2016. It was a Thursday. A while ago, I blogged about using MediatR to build a processing pipeline for requests in the form of commands and queries in your application. MediatR is a ...
6 April, 2011. It was a Wednesday. A common point of confusion when getting started with Git on Windows is line endings, with Windows still using CR+LF while every other modern OS uses LF only. Git ...
13 May, 2014. It was a Tuesday. Domain events are one of the final patterns needed to create a fully encapsulated domain model – one that fully enforces a consistency boundary and invariants. The need ...
22 April, 2014. It was a Tuesday. I’ve been a supporter and user of NHibernate for nearly 10 years. While not part of the original NHibernate Mafia, I’ve long enjoyed NHibernate’s ability to rich, ...
31 October, 2012. It was a Wednesday. I often hear people say something like “if you need it once, build it. If you need it twice, abstract it.” People often say then in the context of the “DRY” – or ...
13 August, 2011. It was a Saturday. One of the biggest roadblocks with getting automated browser tests (we use WatiN) running in a Windows Continuous Integration environment is figuring out how to let ...
In most of the projects I’ve worked on in the last several years, I’ve put in place a mediator to manage the delivery of messages to handlers. I’ve covered the motivation behind such a pattern in the ...
5 May, 2015. It was a Tuesday. CQRS is a simple pattern – two objects for command/queries where once there was one. These days just about every system I build utilizes CQRS, as it’s a natural ...
I’d like to cover these aspects partially because these ideas play a large role in the later ideas, but also because Rob asked me to (see comments). If you’d like an in-depth discussion of these ...
20 July, 2016. It was a Wednesday. Part of the release of ASP.NET Core is a new DI framework that’s completely integrated with the ASP.NET pipeline. Previous ASP.NET frameworks either had no DI or ...
Recently, I talked some about the idea of an intentionally anemic domain model, under the name of “Persistence Model”. While a Persistence Model is great for a large percentage of projects, you may ...