---
title: ".NET"
description: "12 posts about .NET, summarised, each linking to the original."
---

# .NET
> 12 posts about .NET, summarised, each linking to the original.

## Articles

### [Getting started with the Supabase .NET SDK](https://yomu.fyi/post/getting-started-with-the-supabase-net-sdk.md)
- Company: [Supabase](https://yomu.fyi/company/supabase.md)
- Author: guillaume\_faas
- Published: Oct 26, 2026
- Type: Tutorial

The Supabase .NET SDK provides a single C# client for Auth, Database, Storage, Realtime, and Edge Functions; version 8.0.0 moves serialization to System.Text.Json and adds injectable HttpClient with retry. It also ships a dependency injection package for ASP.NET Core that registers the client as scoped via IHttpClientFactory to pool connections. Models derive from BaseModel with table and column attributes; queries use From () with Where filters, and updates require explicit calls without a change tracker, supporting both model-based and query-builder approaches. Authentication covers email/password, OAuth, magic links, phone, and SSO, with auto-refresh tokens attaching to subsequent requests for Row-Level Security. Setup for ASP.NET Core uses AddSupabase, while other apps construct the client manually and call InitializeAsync; the post also distinguishes publishable and anon keys for client apps from secret and service keys that bypass Row-Level Security.


### [Introducing the unified Supabase .NET SDK](https://yomu.fyi/post/introducing-the-unified-supabase-net-sdk.md)
- Company: [Supabase](https://yomu.fyi/company/supabase.md)
- Author: guillaume\_faas
- Published: Oct 19, 2026
- Type: Announcement

The Supabase .NET SDK v8 is now available, consolidating all packages under a single repository with a unified version number. Previously, packages like Gotrue, Realtime, and the main package were scattered across multiple repositories with separate versions and lifecycles, making upgrades complex. From v8.0.0, all packages—Gotrue, PostgREST, Realtime, Storage, Functions, and the umbrella package—share the same version, and previous repositories are archived as read-only. The jump from v1.x.x to v8.0.0 was necessary because Realtime was already on v7.x.x, and this ensures lockstep versioning going forward. A new dependency injection extension package registers the Supabase client with the .NET service container and lets IHttpClientFactory manage its HttpClient, starting at v8.0.0 as well. The update switches serialization from Newtonsoft.Json to System.Text.Json, adds configurable retry with backoff, accepts publishable and secret API keys, and targets netstandard2.1, with a migration guide available for breaking changes.


### [dotInsights | October 2026](https://yomu.fyi/post/dotinsights-october-2026.md)
- Company: [Jetbrains](https://yomu.fyi/company/jetbrains.md)
- Author: Rachel Appel
- Published: Oct 5, 2026
- Type: Announcement

The dotInsights newsletter from JetBrains collects recent .NET and software development articles for developers. Topics include C# 15 collection expression arguments, union serialization with System.Text.Json, and control flow obfuscation for .NET and Java teams. Several posts focus on ASP.NET Core, covering middleware, RAG integration, and using passkeys for second factor authentication. The newsletter also features discussions on event-driven architecture versus CRUD over pub/sub and the impact of AI on database schema design. JetBrains announces the Rider 2026.2.3 release and explains how Microsoft helped fix slow startup times for Rider and ReSharper.


### [Rider 2026.2.3 Is Released!](https://yomu.fyi/post/rider-2026-2-3-is-released.md)
- Company: [Jetbrains](https://yomu.fyi/company/jetbrains.md)
- Author: Alexander Kurakin
- Published: Sep 28, 2026
- Type: Announcement

Rider 2026.2.3 is released, adding AI performance analysis to the Monitoring tool window and fixing an issue with the AI Agent Setup widget on Windows. The Monitoring tool window collects runtime data every time an application runs, allowing the AI agent to find bottlenecks and link them to code using the Analyze with AI action, which sends a prompt to the agent to begin the investigation. The agent uses the dottrace-analyze skill to show where time was spent, follow hot paths in code, and provide useful performance insights in the chat. This feature requires Windows, dotUltimate or the All Products Pack, and the AI Assistant plugin. The widget fix addresses issue RIDER-143160, where clicking its taskbar icon with display scaling below 175% failed to open the widget, and updates are available from the IDE, Toolbox App, or website.


### [How to Build an RCS Business Messaging Campaign with Twilio in C#](https://yomu.fyi/post/how-to-build-an-rcs-business-messaging-campaign-with-twilio-in-c.md)
- Company: [Twilio](https://yomu.fyi/company/twilio.md)
- Author: Amanda Lange, Dhruv Patel
- Published: Sep 25, 2026
- Type: Tutorial

RCS Business Messaging upgrades SMS with branded conversations featuring images, suggested replies, and read receipts delivered natively on the recipient’s phone. Twilio Programmable Messaging supports RCS via the same API used for SMS, allowing reuse of existing integrations. This tutorial teaches building an RCS campaign in .NET 10, requiring a Twilio account, registered RCS Sender, Messaging Service, ngrok, and a code editor. The process includes creating a rich card template with hero image, dynamic placeholders, and three buttons (Shop the sale, Send promo code, Unsubscribe), then broadcasting personalized messages via the Twilio helper library while capturing status and replies through webhooks exposed by ngrok. Test devices receive messages without waiting for full RCS sender approval, and the server terminal outputs inbound replies and status callbacks in real time.


### [Building Secure AI Agents with Microsoft Agent Framework and Auth0: Human-in-the-Loop Approval](https://yomu.fyi/post/building-secure-ai-agents-with-microsoft-agent-framework-and-auth0-hum.md)
- Company: [Auth0](https://yomu.fyi/company/auth0.md)
- Author: Andrea Chiarelli
- Published: Sep 21, 2026
- Type: Tutorial

The post details how to add secure human-in-the-loop approval to an AI expense agent built with Microsoft Agent Framework and Auth0, completing the four-part series that handles identity, authorization, and action. Because approval is a security-sensitive action requiring the same cryptographic rigor as any authentication event, the agent uses Client-Initiated Backchannel Authentication (CIBA) to push a notification to the manager’s phone instead of accepting chat input. The notification includes a binding message describing the expense by ID, amount, vendor, and context, giving the manager enough information to decide from a lock screen. The agent polls Auth0’s token endpoint until the manager approves or denies, then uses the CIBA-issued access token scoped with approve:expenses to record the decision on a separate Expense API. This design ensures approval decisions are cryptographically bound to the manager’s identity and verifiable by downstream services, completing the secure loop.


### [How to Orchestrate Multi-Call Conversations with an LLM and Twilio Conversation Memory](https://yomu.fyi/post/how-to-orchestrate-multi-call-conversations-with-an-llm-and-twilio-con-memory.md)
- Company: [Twilio](https://yomu.fyi/company/twilio.md)
- Author: Amanda Lange
- Published: Sep 15, 2026
- Type: Tutorial

The tutorial builds a C# .NET 9 ASP.NET Core voice service that preserves caller context, preferences, and action history across separate inbound calls. It combines Twilio Conversation Relay and a Twilio Conversation Memory Store with an OpenAI gpt-4o-mini service, using WebSockets to connect the call flow and stream generated text. The setup covers creating the project, installing Twilio, DotNetEnv, and OpenAI packages, configuring credentials and IDs in .env, exposing local webhooks with ngrok, and routing /voice to /ws. The sample assistant is framed as Owlbert's Auto Repair and is instructed to speak naturally, avoid lists and emojis, refer to caller details, and acknowledge uncertainty rather than guess. Testing uses two calls from the same number; the expected result is that the second call recalls first-call details and that Twilio shows a stored conversation summary.


### [How to Connect Your Twilio Agent to External APIs](https://yomu.fyi/post/how-to-connect-your-twilio-agent-to-external-apis.md)
- Company: [Twilio](https://yomu.fyi/company/twilio.md)
- Author: Amanda Lange
- Published: Sep 15, 2026
- Type: Tutorial

This tutorial shows how to connect a Twilio voice agent to an external REST API so it can retrieve live information during a conversation. It uses C# .NET 9, Twilio Conversation Relay, WebSockets, OpenAI tool calling, and the authentication-free Cat Facts API as a demonstration. An ASP.NET Core application exposes a /voice webhook, connects calls to a /ws endpoint, maintains conversation messages, streams model responses, and executes get\_cat\_fact by requesting and parsing JSON from the Cat Facts service. The guide also covers environment variables, NuGet dependencies, ngrok tunneling, Twilio number configuration, and troubleshooting for webhook URLs and API keys. After setup, callers can ask for a cat fact and receive one from the external service, illustrating how function tools can give voice agents real-time data and perform API-backed work.


### [Heroku Support for .NET 10 LTS: What Developers Need to Know](https://yomu.fyi/post/heroku-support-for-net-10-lts-what-developers-need-to-know.md)
- Company: [Heroku](https://yomu.fyi/company/heroku.md)
- Author: Rune Soerensen
- Published: Nov 11, 2025
- Type: Announcement

Heroku now supports building and running .NET 10 applications, including ASP.NET Core 10, C# 14, and F# 10, as the new three-year Long Term Support release becomes available. Its .NET buildpack detects single-file C# applications, installs the latest SDK, builds and publishes them, and configures web apps without project or solution files; it also supports both .sln and .slnx formats. Heroku CI continues to run dotnet test by default, with the .NET 10 SDK integrating the Microsoft Testing Platform into that command. .NET 8 and .NET 9 remain supported with updates but reach End of Support on November 10, 2026, while apps targeting net10.0 RC will use stable .NET 10 on their next push and can pin SDK versions through global.json.


### [SignalR Scalability: Scaling Real-Time SignalR Applications on Heroku](https://yomu.fyi/post/signalr-scalability-scaling-real-time-signalr-applications-on-heroku.md)
- Company: [Heroku](https://yomu.fyi/company/heroku.md)
- Author: Andrew Fawcett
- Published: May 21, 2025
- Type: Tutorial

Scaling a SignalR application beyond one server requires coordination because each server maintains its own connected-client list. The guide builds a .NET 9.0 chat application, adds the Microsoft.AspNetCore.SignalR.StackExchangeRedis package, and configures Redis as a backplane with a SignalRChat channel prefix and environment-specific connection settings. It deploys the application to Heroku, changes the dyno type to standard-1x, and runs three web dynos; without session affinity, WebSocket startup fails because the connection may be routed to a different dyno. Enabling Heroku’s http-session-affinity feature keeps requests on one dyno, after which both browsers establish stable WebSocket connections and exchange chat messages successfully across the scaled deployment.


### [How to Manage User Lifecycle with .NET and SCIM](https://yomu.fyi/post/how-to-manage-user-lifecycle-with-net-and-scim.md)
- Company: [Okta](https://yomu.fyi/company/okta.md)
- Author: Ram Gandhi
- Published: Feb 29, 2024
- Type: Tutorial

Managing users across multiple systems can be slow, error-prone, difficult to synchronize, and a security risk, so the tutorial uses SCIM to standardize lifecycle operations. It builds a .NET 8 SCIM server with RESTful CRUD endpoints for the User resource, backed by Entity Framework Core and SQLite, and seeds sample users and emails for testing. Swagger UI is used to inspect and exercise the API, while Okta acts as the SCIM client and identity provider after OAuth-protected endpoints and provisioning are configured. The walkthrough tests importing users, syncing assignments, deprovisioning by setting active to false, reprovisioning by setting it to true, and propagating profile changes; however, the original Okta CLI instructions no longer work exactly as written after the May 2025 plan and tooling changes.


### [How to Add Authentication to .NET MAUI Apps](https://yomu.fyi/post/how-to-add-authentication-to-net-maui-apps.md)
- Company: [Okta](https://yomu.fyi/company/okta.md)
- Author: Laura Rodríguez
- Published: Jun 21, 2023
- Type: Tutorial

This tutorial shows how to add Okta-based authentication to a .NET MAUI application, covering project setup, OpenID Connect configuration, sign-in, sign-out, and platform integration. It uses IdentityModel.OidcClient, an OktaClient wrapper, an OktaClientConfiguration class, and a WebBrowserAuthenticator implementation to connect the application to Okta’s browser-based authorization flow. The walkthrough creates a native OIDC client with the Okta CLI, registers redirect and logout URIs using myapp://callback, configures dependency injection, and updates the UI to display claims after login. For Android, it adds a WebAuthenticationCallbackActivity with an intent filter for the myapp scheme and enables Custom Tabs visibility in AndroidManifest.xml. The post includes troubleshooting for NuGet configuration and runtime-pack errors, but notes that the Okta CLI was deprecated and the original instructions no longer work exactly as written after the May 2025 plan change.
