Blog posts in category: tech
Upgraded this site (and associated function) to .NET 8
by Patrick Lee on 13 Oct 2024 in categories tech with tags ASP.NET Core Functions .NET 6.0 .NET 8.0
I have just upgraded this website from .NET 7 to .NET 8, and also the associated Azure function from .NET 6 in-process to .NET 8 isolated. Upgrading an app service (website) from .NET 7 (or 6) to .NET 8 is pretty straightforward and essentially just involves changing the target framework ...
How to check or save the Configuration app settings for an Azure app service
by Patrick Lee on 15 Feb 2023 in categories tech with tags Azure configuration DevOps Kudu settings
For security reasons, you should not be storing production setting values in source control. But this means that by default, you don't have your own backup of the values for your live, production settings. What if you want to store a copy of your settings (e.g. along with the artifacts) ...
EFCore Power Tools is useful in the migration from Entity Framework to Entity Framework Core
by Patrick Lee on 13 Feb 2023 in categories tech with tags Azure Entity Framework Entity Framework Core migration .NET 7
I was able to migrate a legacy project using .net framework and entity framework to .NET 7 and EFCore relatively easily. EFCore Power Tools was very useful in doing a first draft of model code from the existing database.
This site updated to use .NET 7 rather than .NET 6
by Patrick Lee on 08 Feb 2023 in categories tech with tags AzureFunctions migration .NET 7
Upgrading a .NET 6 to .NET 7 app service seems very straightforward. Upgrading Azure functions to .NET 7 looks to be a more significant change, and might require some investigation first.
A reminder that .NET 6 (or 7) code can work with Entity Framework 6.3.3 and later, although EF Core is better
by Patrick Lee on 08 Feb 2023 in categories tech with tags Azure Entity Framework Entity Framework Core legacy .NET 6 .NET 7
If your legacy code uses Entity Framework 6.3.3 or later, you don't necessarily need to move to Entity Framework Core at the same time that you move from .net framework 4.7/4.8 to .NET 6 or 7.
If you get TLS 1.0 or 1.1 error, one possibility might be that you are using an older app service that needs migrating to .NET 6 (or at least framework 4.8)
by Patrick Lee on 07 Feb 2023 in categories tech with tags Azure .NET 7 .Net framework TLS
One possible solution to a "You are using TLS version 1.0, 1.1 and/or 3DES cipher which are deprecated" error might be to upgrade any older app services that are using older versions of .net framework.
Microsoft LUIS apps: deprecated in favour of CLU and difficult to migrate, but still work! (for now)
by Patrick Lee on 07 Feb 2023 in categories tech with tags AI CLU LUIS natural language processing
Microsoft's Natural Language Processing LUIS apps seem to be deprecated in favour of CLU but are currently difficult to migrate. However the LUIS apps still seem to work - for now at least!
app.diagrams.net (formerly draw.io): a useful free tool for doing cloud and other architecture charts
by Patrick Lee on 28 Jan 2023 in categories tech with tags architecture Azure design Office
I have found app.diagrams.net useful for doing architecture charts to document and explain how the different components in a distributed application work together..
LogVersionInfo: a useful subfunction to include in your Azure Functions to record the version used every day (or other interval)
by Patrick Lee on 28 Jan 2023 in categories tech with tags AzureFunctions
When deploying code, it is important to be able to have an easy way to check that the deployment worked and that the version deployed is the one you published. This is particularly important when deploying by swapping (e.g. from stage to production): in my experience, the swaps work about ...
Microsoft Azure's Monitor for Azure Functions is buggy - check the logs for any missing data
by Patrick Lee on 28 Jan 2023 in categories BigData tech with tags Application Insights Azure AzureFunctions
In the Azure portal, for Azure Functions, I've found that the Monitor section for individual subfunctions is not infrequently a bit buggy, in that it misses out some function runs, particularly for functions trigged by a timer. To check whether the function actually ran on a particular day, check the logs for the function: they are usually far more complete.