I needed to configure a pipeline to copy some build artefacts to Azure Blob storage, however after setting up the AzureBlob File Copy task I kept getting an Authentication Failed error.
Ever needed to create an auto-complete that’s powered by an auto-complete API, or have a search field you want to automatically run without forcing the user to hit enter? Use this technique to avoid excessive traffic to your endpoints.
Being doing a bit of IaC with Bicep recently and I ran into an issue when trying to iterate over a list of provisioned resources. I was trying to create a new resource for each one and I kept getting an error - bicep(BCP144)
Iterating over a list of provisioned resources
I had a scenario where I needed to iterate over a list of provisioned resources and create a new resource for each one. The secnario was I was configuring records on a collection of DNS Zones.
I just saw the one billion row challenge. I’m a bit late as the challenge was back in January but I thought it would be a fun exercise to try and solve it in .NET.
Can you believe it, just like that it’s been 4 and a half years since I wrote my initial series on multi-tenancy in ASP.NET and now ASP.NET Core 8 is out. In this post I revisit multi-tenancy in ASP.NET Core and take a fresh look at how I’d implement multi-tenancy today.
By default the .NET HttpClient will download the entire respones into memory before returning control to the caller. Which means if you’re processing data from the stream, your process won’t start operating on the stream until the entire response has been buffered into memory.
The default behaviour makes sense because the response is loaded into memory and the sockets freed up as quickly as possible. That’s probably best for most applications. However for the application I was working on (FeedMD - RSS/Atom to MD feed converter) if there’s no new posts near the top of the feed we decide to stop processing the feed very early on. I wanted to start acting on the stream right away.
What a fantastic sentiment. It got me thinking back to my first experiences with the Interent. My first website was a Age of Empires fansite believe it or not. I wish I had a screenshot.
After upgrading a .NET 3.1 ASP.NET Web Application to .NET 6 and Entity Framework from 3.1.1 to 7.0.8 the schema applied using the table data annotation was no longer respected
This blog just turned 10! It’s a strange milestone; so inconsequnetial for everyone in the world bar me. Instead of going down a rabbit hole of irrelevance a better use of my time is to give this blog yet another refresh.
.NET Core 3.1 is out and it’s a LTS release. Our 4 part multi-tenancy series is already out of date! Here we’ll cover off the breaking changes and the updates we need to make.
This time we are looking at how we can configure services on a per-tenant basis which allows us to resolve a different service based on which tenant is active. An application isn’t truly multi-tenant unless you can have a different services container for each tenant.
This series of blog posts is an exploration of how to achieve multi-tenancy in an ASP.NET Core web application. In this part of the series we resolve a request to a tenant and introduce the ability to access information about that tenant.
I don’t want to re-implement the label HTML helper but I would like a way to inspect the model and update the label text based on the presence of the [Required] attribute.
If you’re currently working on a project where all developers are using the same centralized development database, then chances are that’s the way the project has been run since the beginning.
If the user navigated away then used the back button they would be shown the original page with the original data. They’d then think the fancy JavaScript was completely broken.
A simple exception handling strategy that enables detailed logging in MVC context but also provides support for general ASP.NET errors such as page not found exceptions.
ACS may not directly support single sign out but you can easily log the user out of their identity provider as well as your website using this technique.