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.
While writing tests for the code presented in the last couple of weeks, I discovered a notable bug caused by an ommission in the code. If you’re a regular reader of this blog, you may have already spotted what was left out.
Following on from last week’s introduction of the plus operator, a friend of mine challenged me to consider an alternative operator for combining validation results:
We’ve created the basics of our validation library, but we haven’t yet addressed the problem of aggregation. How do we make it easy for our consumers to combine multiple validation results together into one. Ideally, we want this to be so simple that they don’t have to think about it at all.
As alluded in the prior post, all of our return types so far have been
ValidationResult - but our consumers will need to know whether they have a success or an error in order to make decisions.
To recap from last time, we want to create a simple library that allows us to express validation in a straightforward way, allowing us to concentrate on the rules we’re checking, not the boilerplate needed to make it work.
|Equality in .NET||7|
|Killing the Utility Class||5|
|Instance validation in C#||6|
|Default includes and excludes for csproj||14 Jul 2018|
|Why we need better validation||07 Jul 2018|
|A question of struct performance||30 Jun 2018|
|Solving my Assembly Load Issues||23 Jun 2018|
|Troubleshooting Assembly Load Issues with the MSBuild Structured Log Viewer||16 Jun 2018|
|Troubleshooting Assembly Loading with the Assembly Binding Log Viewer||09 Jun 2018|
|Sharpen The Saw #37||04 Jun 2018|
|Converting projects to new csproj||02 Jun 2018|
|Avoid hardcoded wait times||26 May 2018|
|Sharpen The Saw #36||21 May 2018|
|Guaranteed Progression||19 May 2018|
|Always fix it twice||12 May 2018|
|Even longer than that||05 May 2018|
|Sharpen The Saw #35||30 Apr 2018|
|A simple fix takes longer than you think||28 Apr 2018|
|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|
|Types of Equality||10 Mar 2018|
|Why is Equality important in .NET?||03 Mar 2018|
|Sharpen The Saw #30||19 Feb 2018|
|A Tale of Minification||17 Feb 2018|
|Sharpen The Saw #29||12 Feb 2018|