It's one of the paradoxes of blogging that most every blogger (including myself) is sharing what they know right now (let's quietly ignore those who blog purely for traffic and visibility). Since everyone is learning, this can result in poor or misleading information being shared just as much as good information. Keep this in mind as you read any blog - how experienced is the writer and how well do they really know what they're talking about.

I'm just as flawed as other bloggers, so you should feel encouraged to check my ideas for yourself. Keep the date in mind as well - in our fast moving field, even good ideas can become obsolete.

Modelling Validation Metadata

Saturday, September 22 2018 validation csharp

Given our requirement of supporting arbitrary metadata on our validation results, how should we modify the semantic types we’ve already created?

Read more »

Validation Metadata

Saturday, September 15 2018 validation csharp

It’s a common requirement for validation messages to be tagged with additional metadata. We might want to indicate which data entry field is the one with a problem, or perhaps provide a tag for machine consumption that identifies which specific problem was encountered.

Read more »

Extending validation with warnings

Saturday, September 08 2018 validation csharp

If we cast back our thoughts back to the start of this series, one of the limitations of using string to return each of our errors was that every message has to be an error. What do we do if we want to support another kind of message?

Read more »

Bootstrapping a Psake build

Saturday, September 01 2018 psake powershell

The PowerShell based tool psake is a great way to orchestrate a build. It can also be used for many other kinds of orchestration. One of the trickiest parts is kicking off the process in the first place.

Read more »

Validation recap

Saturday, August 25 2018 validation csharp

Let’s recap what we’ve achieved so far with our semantic types for validation. We’ve created a handful of types that work together to give a good model for capturing and processing object validation. The model starts with the base class ValidationResult and its subclasses:

Read more »

Recent posts

Sharpen The Saw #34  23 Apr 2018
How long is a simple fix?  21 Apr 2018
Sharpen The Saw #33  16 Apr 2018
Types behaving badly  14 Apr 2018
Implementing Value Equality  07 Apr 2018
Sharpen The Saw #32  02 Apr 2018
Implementing Entity Equality  31 Mar 2018
Sharpen The Saw #31  26 Mar 2018
Equality and GetHashCode  24 Mar 2018
Equality has Symmetry  17 Mar 2018