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 ...
21 August, 2008. It was a Thursday. Services are first-class citizens of the domain model. When concepts of the model would distort any Entity or Value Object, a Service is appropriate. From Evans’ ...
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 ...
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 ...
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 ...
18 June, 2013. It was a Tuesday. One of the keys to having maintainable tests are to make sure that tests are isolated and reproducible. For unit tests, this is easy as long as we stay away from ...
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 ...
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 ...
It was rather easy to share logic in a service class for business logic, or a repository for data logic (queries, etc.) When it comes to building apps using CQRS and MediatR, we remove these layer ...
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 ...
24 February, 2016. It was a Wednesday. After a bit of feedback and soul searching and honestly tired of dealing with questions, some of the static API is restored in ...