Author name: Simon Holman

Debug Azure Functions webhook callbacks with Dev Tunnels

Using Dev Tunnels to test your Azure Functions webhook callbacks is a breeze. If your systems contain any third-party integrations with services like SendGrid or Stripe, then you will likely want to receive webhook callbacks so you can be informed about what’s happening with your requests. The Azure Functions HTTP trigger is absolutely perfect for […]

Debug Azure Functions webhook callbacks with Dev Tunnels Read More »

, , , ,

Add DataAnnotations metadata to EF Core in a partial class

If you’re old like me, and can remember back to the old days of LINQ to SQL and early Entity Framework with .NET Framework, then you’ll likely remember using a Metadata class along with the MetadataType attribute on a partial class to add DataAnnotations to your models. This allowed you to use your entities as

Add DataAnnotations metadata to EF Core in a partial class Read More »

, , , , ,

Sending email from Azure Functions with SendGrid

Azure Functions is the perfect tool for sending emails from websites and apps. It’s lightweight, fast, and scalable. Add SendGrid to it and you have a match made in heaven. In one of our products at Expeed, we pair Azure Functions with blob storage, queues, and table storage from an Azure Storage account, with SendGrid

Sending email from Azure Functions with SendGrid Read More »

, , , ,

No job functions found after Azure functions upgrade

So the time has come to upgrade your old Azure Functions app to the latest version. Now that we have the .NET Upgrade Assistant, the process is “fairly” pain-free. However, if you run through the upgrade process, and fix any Nuget issues and binding issues (like no more QueueInput binding!) then you may encounter the

No job functions found after Azure functions upgrade Read More »

, , ,

Configure Serilog for Logging in Azure Functions

Even though the built-in logging in .NET Core is pretty good these days, Serilog takes it to the next level, making complex logging exceptionally easy. Serilog allows us to not only log the output of the functions to the Console but also write to a Log file, Application Insights, Raygun, Sentry, or any number of

Configure Serilog for Logging in Azure Functions Read More »

, , , ,

Creating a DMARC record for your domain

Google and Yahoo have both announced a new set of requirements that senders must meet from the beginning of February 2024 to ensure that their email is delivered to mailboxes on their services. Creating a DMARC record for your domain is key to proper domain security. The long and short of these requirements are that

Creating a DMARC record for your domain Read More »

, , , , , , , ,

Practical tips on how I achieved 45% Savings on my Microsoft Azure billing

About 18 months ago, I took over a product that was fully run on Azure. The solution costs had ballooned from $2000/month at its inception, to almost $5000/month after being on Azure for about 2.5 years. In this article, I’ll talk through how I did a deep dive into each component of the solution to

Practical tips on how I achieved 45% Savings on my Microsoft Azure billing Read More »

, , , , , , ,

Manage your Microsoft365 domains with Cloudflare DNS

In this post, we’ll take a look at adding a domain to Microsoft365 and configuring your DNS records with Cloudflare DNS. One of the benefits of using Cloudflare for your DNS is that you can hide where your website is being hosted, and it’s free for their basic services. Create a Microsoft365 tenancy The first

Manage your Microsoft365 domains with Cloudflare DNS Read More »

, , ,
Scroll to Top