Thomas Ardal

Thomas Ardal

Denmark
246 posts
Managing bounced emails with AWS SES and Azure Functions

Handling bounced emails is something that is often forgotten. You may think that it isn't a problem but when sending out a lot of emails, implementing a good bounce strategy is key. In this post, I will show you how to implement a local list of bounced emails with AWS ...

Monitoring .NET scheduled tasks - Tools and alternatives

TOCThere's a lot of possibilities when it comes to developing scheduled tasks with .NET. This post is a guide to monitoring scheduled tasks in a range of different setups and frameworks. Most developers have some form of error logging in place but often forget about the most important thing when ...

How we do bundling and minification in ASP.NET Core

TOCWhen migrating our websites to ASP.NET Core, we had to find a new way to bundle and minify JavaScript and CSS files. We used the System.Web.Optimization namespace in ASP.NET MVC, combined with the AspNetBundling and BundleTransformer packages for some additional features like generating source maps. In ...

Error monitoring and detailed logging of an ASP.NET Core application with PostSharp and elmah.io

This is a cross-post from the PostSharp Blog. Original post here: https://blog.postsharp.net/post/error-monitoring-and-detailed-logging-asp-net-core-application.html In this article, we show how to add error monitoring and detailed logging to an ASP.NET Core application. These features help you diagnose and fix errors. We will be using elmah. ...

Moq vs NSubstitute vs FakeItEasy - Which one to choose?

TOCWriting real unit tests or not. We as software developers seem to switch between thinking it's the best idea ever to everything should just be integrated tested. I too changed my mind multiple times around this subject over the years. No matter where I have been on that roller coaster, ...

Facebook and LinkedIn groups for .NET developers

TOCJoining one or more .NET related groups on Facebook and LinkedIn is a great way to spice up that feed of what people you knew 20 years ago had for breakfast or got a kudo. Some groups are full of links to great blog posts while others let you ask ...

Lessons learned after migrating 25+ projects to .NET Core

TOCWe recently finished one of the biggest refactoring tasks we have ever done on elmah.io: migrating everything to .NET Core. elmah.io currently consists of 5 web apps and 57 Azure Functions spread across roughly 25 Function apps. In this post, I'll share some of the lessons learned we ...

Add Razor runtime compilation when developing ASP.NET Core

When I started looking into ASP.NET Core, I was a bit surprised that I had to compile my web project in order to publish changes in cshtml Razor files. Runtime compilation of Razor files just worked out of the box with ASP.NET MVC. In this post, I'll show ...

Split IP and port in JavaScript with regular expressions

We recently did some improvements on the elmah.io UI making IPs clickable. We've had automatic detection of IPs for a while but it always bugged me that the regex that we had didn't caught IP addresses with a port number (typically logged by ASP.NET MVC and similar): 127. ...