Why I love Resharper 1

With every new version of C# a new version of Resharper appears. It teaches me the new language features and how I can write my code in the new way. It’s not always right as the code it converts to can be unmaintainable so you have to be careful. But every now and then it makes me realise why I pay for a great productivity tool. public FeatureController(ApplicationDbContext applicationDbContext) { if (applicationDbContext == null) { throw new ArgumentNullException("applicationDbContext", "Argument cannot be null....

January 19, 2018 · 1 min

Missing ClaimsPrincipal in ViewComponents

I was creating a couple of ViewComponents this evening in aspnet core and needed access to the ClaimsPrincipal of the current logged in user. Like the MVC Controller I was expecting the User property of the base class to be a ClaimsPrincipal however I was wrong and it was only a IPrincipal. Was this a bug? Had I missed something? Did I really need to cast User to being a ClaimsPrincipal?...

January 18, 2018 · 1 min

Span<T> - byte to int conversions

20180913 update - New post with updated example; enjoy! There has been a recent push for performance improvements in the dotnet framework and as part of that, and any performance improvement work, there has been analysis done around the memory allocations being used for certain operations. I’m probably nearer to novice than expert in this matter however the launch of Span peaked my interest. The main starting point for me was the January 2018 MSDN magazine article by Stephen Toub called C# - All About Span: Exploring a New ....

January 6, 2018 · 3 min

Asp.net MVC Output Caching During Development

During some asp.Net MVC development for a public website recently I have been looking at caching. The content of the site has minimal churn so I looked to use OutputCache. This works fine once it’s been finished and released. However it causes frustrations during development when you want to change something, compile, refresh and nothing happens. One option is to comment out the OutputCache attribute, either on each action or on the specific controller, during development but that seems a bit crazy and isn’t sustainable....

December 13, 2014 · 1 min

Enums in C#; Doing More Than You Thought!

I have been developing for a while now and use Enums on a daily basis (nearly) and was quite happy in my understanding an Enum definition had a set number of values and of those values they could be cast to the related integer value (or another under-lying type) and back again. And then I saw the following piece of code (condensed down for example): System.Net.HttpStatusCode value = (System.Net.HttpStatusCode)429; var result = (429 == (int)value); There is no corresponding value in System....

July 22, 2014 · 2 min