May
10
2016
I just returned from SQLBits 2016 and had a fantastic time. They really put on a great
conference, with brilliant speakers on a variety of SQL topics (and increasingly NoSQL/Big Data). Throw in good catering and an amazing , all for a very reasonable price and you have a conference I really can't recommend enough!
The talk that excited me most this year was...
Apr
13
2016
Entry Point Logging allows you to track all your API calls and the calls they make from a single place
In the first part of this series I gave a brief overview of Serilog and Seq and what differentiates them from logging you may have done in the past. One of the most useful aspects of structured logging is the...
Apr
12
2016
Add structure to your log entries and bring your logs up to date
It used to be that logging was a bit of an after thought where a few statements such as 'Connecting to the database' or 'Invalid user login' were written to a text file that was rarely looked at. Well things have moved on a fair bit since then.
Part 1...
Apr
11
2016
Standardise your basic user data and add it to your ClaimsPrincipal for easy access!
Recently I was working on a web api 2.0 project that used a bearer token for authentication and passed a UserId in the claims for the generated ClaimsPrincipal.
Each controller in the project was accessing the User property from the ApiController base class to get the UserId...
Aug
25
2015
Fluent Builders are extremely useful. Once you start using them there is no going back!
In my first article I outlined fluent builders - what they look like and how to put them together. This time I will go a little deeper to show you just how versatile they can be.
Method Naming
You can be as flexible as you like in...
Aug
05
2015
When creating tests (for TDD or BDD), use fluent builders
No, I don't mean the kind that come around and drink all your coffee / tea. When you are testing your code you often have to initialise various classes beforehand. There are several ways to do this. Consider this simple api that takes in a 'Booking' object and returns the...
Jul
20
2015
With Visual Studio 2015 comes C# 6.0. The team at Microsoft put a whole lot of effort into the Roslyn compiler this time around and the language features are primarily syntactic sugar, but they are still extremely welcome.
The Null-Conditional Operator
Here is a small piece of code that I inherited recently. It has a very simple task, get the client's...