Blog - .NET Core

Swimburger
Twilio SendGrid logo and Azure Functions logo

Send Emails using C# .NET with Azure Functions and SendGrid Bindings

- .NET
Learn how to send emails from Azure Functions using C# .NET and the SendGrid Bindings
ngrok logo

Integrate ngrok into ASP.NET Core startup and automatically update your webhook URLs

- .NET
Learn to integrate ngrok into ASP.NET Core's startup process to create secure public tunnels and automatically handle Twilio's webhooks with a single command
Twilio logo

Send Scheduled SMS with C# .NET and Twilio Programmable Messaging

- .NET
Learn how to schedule SMS with C# .NET and Twilio Messaging's latest feature: Scheduled Messaging!
.NET Bot

How to get ASP.NET Core's local server URLs

- .NET
Learn how to access the ASP.NET Core's local server URLs in Program.cs, in controllers using Dependency Injection, and in IHostedService or BackgroundService.
Twilio Logo and Azure Functions logo

How to send SMS with C# .NET and Azure Functions using Twilio Output Binding

- Azure
Twilio posts cloud communications trends, customer stories, and tips for building scalable voice and SMS applications with Twilio's APIs.
Twilio SendGrid logo

How to send recurring emails in C# .NET using SendGrid and Quartz.NET

- .NET
Learn how to send recurring emails with C# .NET using Quartz.NET and SendGrid's APIs
Twilio SendGrid logo

Send Emails using the SendGrid API with .NET 6 and C#

- .NET
Learn how to send emails using the SendGrid API with a .NET 6 console application and C#
Umbraco logo and Docker logo

How to run Umbraco 9 as a Linux Docker container

- Umbraco
Umbraco 9 has been built on top of .NET 5. As a result, you can now containerize your Umbraco 9 websites in Linux containers. Learn how to containerize Umbraco 9 with Docker.
Umbraco, Azure, and Linux logo

Deploying Umbraco 9 to Azure App Service for Linux

- Umbraco
Learn how to create the Azure infrastructure using the Azure CLI to host an Umbraco 9 website using Azure SQL and Azure App Service for Linux, and how to deploy your Umbraco 9 site.
.NET Bot on a scooter riding from Umbraco 8 to 9

Thoughts and tips on moving to Umbraco 9 from Umbraco 8

- Umbraco
.NET Core was a groundbreaking change to the .NET platform. It is blazing fast, open-source, and cross-platform across Windows, Linux, and macOS. With Umbraco 9, we finally get to enjoy all the new innovations from .NET Core. Read about my experience upgrading an Umbraco 8 website to Umbraco 9.
.NET Bot, Azure, and Discord are together in a Discord server

How to create a Discord Bot using the .NET worker template and host it on Azure Container Instances

- Azure
Learn how to develop a Discord bot using the .NET worker template, containerize it using Docker, push the container image to Azure Container Registry, and host it on Azure Container Instances.
Picture of Niels—white male with long blond hair— with a shocked expression

Guest on .NET Docs Show: Making Phone Calls 📞 from Blazor WebAssembly with Twilio Voice

- .NET
Earlier this week, the folks at the .NET Docs Show invited me over to talk about Twilio, .NET, and Blazor WebAssembly. We discussed different architectures, workflow diagrams, Twilio capabilities, and how to integrate them using ASP.NET WebAPI's and Blazor WebAssembly.
.NET Bot surfing a wave

How to bypass Captchas in Selenium UI tests

- .NET
Captchas are often used as a way to combat spam on website forms. Unfortunately, this also makes it harder to verify the functionality of the forms using UI tests like Selenium. To work around this you can extend your website with a bypass form.
.NET Bot holding a package with "ZIP" on it.

Create ZIP files on HTTP request without intermediate files using ASP.NET Core MVC, Razor Pages, and endpoints

- .NET
The ZipArchive wraps any stream to read, create, and update ZIP archives. You can send the result to the client using ASP.NET MVC, Razor Pages, and endpoints.
C# and Chrome logo

Download the right ChromeDriver version & keep it up to date on Windows/Linux/macOS using C# .NET

- .NET
Chrome frequently updates automatically causing ChromeDriver versions to mismatch. Using C# .NET you can download the correct version of the ChromeDriver and keep it up-to-date.
.NET Bot building an application

Use project Tye to host Blazor WASM and ASP.NET Web API on a single origin to avoid CORS

- .NET
Using Microsoft's experimental Project Tye, you configured the proxy to forward requests to '/api' to the Web API, and all other requests to the Blazor WASM client.
Blazor logo pointing to the GitHub logo and the GitHub logo pointing to the Netlify logo.

How to deploy Blazor WebAssembly to Netlify

- .NET
Now that you can run .NET web applications without server-side code, you can deploy these applications to various static site hosts, such as Netlify.
.NET Bot building an application

Use YARP to host client and API server on a single origin to avoid CORS

- .NET
Using Microsoft's new reverse proxy "YARP", you configured the proxy to forward requests to '/api' to the Web API, and all other requests to the Blazor WASM client.
.gz on a blue background

Introducing Online GZIP de/compressor, built with Blazor WebAssembly

- .NET
Using Blazor WASM and the GZIP API's I created this little web application which you can use to compress and decompress multiple files using GZIP.
Blazor logo

Pre-render Blazor WebAssembly at build time to optimize for search engines

- .NET
Using pre-rendering tools like react-snap, you can pre-render Blazor WASM. Additionally, you can integrate these pre-rendering tools inside of your continuous integration and continuous deployment pipelines.
Blazor logo

Fix Blazor WebAssembly PWA integrity checks

- .NET
The service-worker-assets.js file is generated during publish and any modification made to the listed files after publish will cause the integrity check to fail.
 Blazor logo next to an arrow pointing to the GitHub logo next to a double arrow pointing from the GitHub logo to the Firebase Hosting logo

How to deploy Blazor WebAssembly to Firebase Hosting

- .NET
With ASP.NET Blazor WebAssembly you can create .NET applications that run completely inside of the browser. The output of a Blazor WASM project are all static files. You can deploy these applications to various static site hosts like Firebase Hosting.
Blazor next to JavaScript logo

Interacting with JavaScript Objects using the new IJSObjectReference in Blazor

- .NET
A new type is introduced in .NET 5 called IJSObjectReference. This type holds a reference to a JavaScript object and can be used to invoke functions available on that JavaScript object.
.NET Bot

Harden Anti-Forgery Tokens with IAntiforgeryAdditionalDataProvider in ASP.NET Core

- .NET
Using IAntiforgeryAdditionalDataProvider you can harden ASP.NET Core's anti-forgery token feature by adding additional data and validating the additional data.
Blazor and Twilio logo

Making Phone Calls from Blazor WebAssembly with Twilio Voice

- .NET
Using Twilio Voice you can add the ability to make and receive phone calls from your own ASP.NET web applications. Twilio’s helper library for JavaScript makes it easy to integrate client functionality into web front ends built with Blazor WebAssembly, and the Twilio NuGet packages provide you with convenient interfaces to Twilio’s APIs for server-side tasks.
Blazor logo next to JavaScript logo

Communicating between .NET and JavaScript in Blazor with in-browser samples

- .NET
The success of Blazor relies heavily upon how well it can integrate with the existing rich JavaScript ecosystem. The way Blazor allows you to integrate, is by enabling you to call JavaScript functions from Blazor and .NET functions from JavaScript also referred to as 'JavaScript interoperability'.
Blazor and Firebase logo

Real-time applications with Blazor Server and Firestore

- DotNet
Blazor Server is built on SignalR, which is built on websockets. Among things, websockets enable Blazor Server to push changes from the server to the browser at any time. You can build real-time UI's when you combine this with a real-time database.
Blazor logo

Pushing UI changes from Blazor Server to browser on server raised events

- .NET
Blazor Server is built on SignalR, and SignalR is built on websockets among other techniques. The combination of these technologies allow Blazor Server to push UI changes into the client without the client requesting those changes.
Serilog logo

Changing Serilog Minimum level without application restart on .NET Framework and Core

- .NET
There are many ways to configure Serilog. The configuration library has the additional advantage that it supports dynamic reloading of the MinimumLevel and LevelSwitches.
.NET Bot writing on a whiteboard

Using ConfigurationProviders from Microsoft.Extensions.Configuration on .NET Framework

- .NET
.NET Core introduced new API's. Some of those libraries are built to support multiple .NET platforms including .NET Framework. So, if you're still using .NET Framework, you could also take advantage of these new libraries.
ASP.NET Blazor Logo

How to run code after Blazor component has rendered

- .NET
Blazor components render their template whenever state has changed and sometimes you need to invoke some code after rendering has completed. This blog post will show you how to run code after your Blazor component has rendered, on every render or as needed.
.NET Core logo + Dotnet bot wearing Red Hat

How to run ASP.NET Core Web Application as a service on Linux without reverse proxy, no NGINX or Apache

- .NET
This article walks us through running a ASP.NET Core web application on Linux (RHEL) using systemd. The end goal is to serve ASP.NET Core directly via the built-in Kestrel webserver over port 80/443.
.NET Core logo + Dotnet bot wearing Red Hat

How to run a .NET Core console app as a service using Systemd on Linux (RHEL)

- .NET
Let's learn how to run a .NET Core console application on systemd. After running a console app as a service, we'll upgrade to using the dotnet core worker service template designed for long running services/daemons. Lastly, we'll add the systemd package integration.
Visual Studio Code logo cursing at .NET Core logo with Red Hat logo

VS Code C# Extension not working in Remote SSH mode on Red Hat Linux? Here's a workaround

- .NET
Unfortunately, the C# Extension for VS Code malfunctions when following the official steps to install .NET Core on Red Hat and using the Remote SSH extension. OmniSharp is not able to find the .NET Core installation but we can work around this.
Screenshot of Visual Studio with EF Raw SQL Code

Querying data using raw SQL & Stored Procedures in Entity Framework Core

- .NET
When LINQ queries can't meet the performance requirements of your application, you can leverage Raw SQL and still have EF map the data to concrete .NET objects. You can also invoke Stored Procedures in case the logic of the SQL queries need to reside in the SQL Database.
.NET and Selenium logo connected to Azure DevOps Pipelines logo driving browser

How to run .NET Core Selenium UI tests on Azure DevOps Pipelines Windows/Ubuntu agents? 🚀

- .NET
his post discusses how to take those UI tests and run them in Azure DevOps Pipelines on both Windows & Ubuntu agents. Use this GitHub repository which contains the UI test project necessary to follow along in this post.
.NET Core + Selenium logo steering a web browser window

How to UI test using Selenium and .NET Core on Windows, Ubuntu, and MacOS

- .NET
Selenium is a browser 🌐 automation tool mainly used for UI testing and automating tasks. Selenium is agnostic of operating system, programming language, and browser. You can automate Chrome on MacOS using C#, FireFox using Python on Windows, or Opera using NodeJS on Linux to give you a few examples.
Azure & .NET & Discord Logo

Creating a Discord Bot using .NET Core and hosting it on Azure App Services

- Azure
Discord is an online communication platform built specifically for gaming. Using .NET Core and Azure App Service WebJobs we can host a Discord bot that can listen and respond to voice and text input.