On .NET  - Channel 9 artwork

On .NET - Channel 9

174 episodes - English - Latest episode: over 2 years ago - ★★★★ - 3 ratings

The .NET ecosystem is continuously growing and empowering developers to create amazing applications. Join us as we take a look at the APIs, the tooling, and some of the interesting projects being created in the .NET ecosystem. You can follow your hosts, Rich Lander at @runfaster2000 and Cecil Phillip at @cecilphillip on Twitter. Use the hashtag #OnDotNET to let us know what you think about the show and even suggest topics you would like to see.

Technology
Homepage Apple Podcasts Google Podcasts Overcast Castro Pocket Casts RSS feed

Episodes

Working with EF Core and Azure Cosmos DB

November 18, 2021 11:00 - 17 minutes - 24 MB Video

In this episode, Jeremy joins Christos to talk about some of the features and improvements made to the Cosmos DB provider in EF Core 6. [00:00] - Introduction [01:29] - EF 6 overview [06:38] - EF Cosmos Demo [10:53] - Connecting to the Storage Emulator   Useful Links EF Core Azure Cosmos DB Provider What's New in EF Core 6.0 EF Core on GitHub  

OData Batching with ASP.NET Core

November 16, 2021 10:30 - 36 minutes - 51.9 MB Video

OData (Open Data Protocol) can be considered an extension to REST that that defines an additional set of conventions  for building and consuming Web APIs. In this episode, Hassan Habib joins Jeremy to show us how we can easily add support for OData batch to our Web APIs [00:00] - Introduction [01:28] - What is OData? [03:20] - What is OData Batching? [09:07] - Setting up OData in an ASP.NET Core project [20:54] - Adding batching support in OData  Useful Links All in One with OData $B...

Large Object Heap Churn in .NET

November 12, 2021 09:00 - 29 minutes - 47.1 MB Video

Mike Rousos is back again! This time Mike shows us how to inspect and diagnose large Object Heap churn in .NET [00:00] - Introduction [01:36] - What tools can we use to look into performance? [03:35] - Diagnostics Demo in Azure App Service [08:50] - Collecting diagnostic traces using dotnet trace [12:56] - Reviewing stats in Perfview [19:56] - Inspecting GC Heap allocations [22:16] - Reducing allocations ArrayPool      dotnet-trace performance analysis utility What is Application ...

Building a custom checkout form with Stripe Elements

October 26, 2021 10:30 - 20 minutes - 30.7 MB Video

Stripe elements provide prebuilt UI components that enable developers to create beautiful checkout flows for your applications. In this episode, CJ Avilla does on to show us how to integrate Stripe elements into an ASP.NET Core project.  [00:00] - Introduction [01:34] - Exploring a custom form [04:12] - Payment collection workflow [06:37] - Adding stripe checkout to your app [12:27] - Customizing the payment types [15:12] - Can you apply your own styles? [16:15] - How are taxes handle...

High CPU Usage with .NET Counters

October 19, 2021 16:00 - 24 minutes - 36.1 MB Video

Investigating  high cpu usage in your applications can be challenging. Our friend Mike Rousos returns to show us how diagnose our applications using a few tools. [00:00] - Introduction [03:30] - Investigating CPU usage in a Web App [05:33] - Reviewing the built-in monitoring in Azure  [07:24] - Using the App Service Kudu tools [10:45] - Installing and using the dotnet-trace [15:14] - Retrieving the dump file through Kudu [16:45] - Analyzing the dump file [22:40] - Recap Useful Links...

Exploring the .NET Table Storage SDK

October 14, 2021 10:30 - 11 minutes - 18.2 MB Video

In this episode,  Software Engineer, Christopher Scott, join Jeremy to talk about the new Table Storage SDK for .NET. [00:00] - Intro [01:45] - When do I use Table Storage? [02:32] - What are the highlights of the new SDK? [04:46] - Exploring the GitHub samples [08:48] - Migrating from other Table Storage SDKs Useful Links Azure for .NET Developers Azure Storage docs Cosmos DB Docs    

Accepting online payments with Stripe

September 16, 2021 09:15 - 23 minutes - 36.1 MB Video

Stripe is a great service that makes it easy for developers to accept payments and send payouts globally. In this episode we’re joined by Stripe Developer Advocate, CJ Avilla, who shows us how to enable Stripe in a Blazor application. [00:00] - Introduction [00:54] - What is Stripe? [02:44] - Setting up Stripe.NET  [14:35] - Understanding price data [16:30] - Using stripe.js in the frontend  [20:21] - Learning about checkout sessions Accepting online payments (Checkout) https://gith...

Using the Console Log formatter

August 27, 2021 10:00 - 22 minutes - 32.5 MB Video

In this episode we’re joined by Maryam Ariyan, one of the Software Engineers that works on the Logging extensions for .NET. Maryam talks to us about some of the new enchantments that her team have been working on to improve logging for .NET applications. [01:03] - What’s new for console logging? [04:06] - SimpleConsole demo [07:54] - Changing the console log format [17:06] - Customizing your own log format   Useful Links Logging in .NET Console log formatting  

Diagnosing memory leaks in .NET apps

August 26, 2021 09:00 - 37 minutes - 61.7 MB Video

In this episode, Software Engineer, Mike Rousos, joins Rich to show can we can use tools like dotnet-dump and Visual Studio to diagnose memory leaks in our .NET applications, even if they're running on a different OS.  [00:55] - What are memory leaks? [04:45] - Inspecting memory leaks cross platform [18:30] - Using dotnet-dump [21:35] - Inspecting dumps in Visual Studio [27:03] - Inspecting dumps with dotnet-dump   Useful Links Thread pool exhaustion Investigate performance counters...

C# Language Highlights: Deconstructing Non-tuple Types

August 24, 2021 09:00 - 5 minutes - 8.86 MB Video

In this short video, David and Kendra diving into the deconstruction of non-tuple types.   Useful Links Deconstructing tuples and other types Creating record types Tuple types .NET Videos  

Using SignalR in your Blazor applications

August 19, 2021 10:30 - 30 minutes - 45.7 MB Video

In this episode, David Pine joins Jeremy to show off this chat bot enabled demo that's powered by Blazor WASM and SignalR [00:00] - Start [01:09] - Why is SignalR and Blazor interesting together? [05:00] - Blazing Chatter Demo [11:54] - Blazing Chatter Demo Client [24:10] - Check out the demo app Useful Links Demo Code Introduction to ASP.NET Core Blazor  Getting Started with SignalR  

C# Language Highlights: Properties

August 19, 2021 09:30 - 4 minutes - 7.55 MB Video

Properties in C# is such a fundamental feature. We’ll learn all about  them in this short video from James and Jayme   Useful Links Properties (C# Programming Guide) Properties (C# Concepts) First steps with C# .NET Videos  

C# Language Highlights: The "in" Parameter Modifier

August 12, 2021 10:00 - 3 minutes - 6.66 MB Video

In just a few minutes, we’ll learn about the "in" Parameter Modifier with Brandon  and Jayme   Useful Links The ‘in’-modifier and the readonly structs in C# in parameter modifier (C# Reference) First steps with C# .NET Videos  

C# Highlights: Immutable Collections

August 05, 2021 11:00 - 4 minutes - 7.84 MB Video

In this short video, you'll learn about Immutable collections from Leslie and Brandon. Useful Links Immutable collections ready for prime time Immutable Collections in MSDN Magazine First steps with C# .NET Videos   Get your questions answered on the Microsoft Q&A for .NET - http://aka.ms/dotnet-qa​   Learn .NET with free self-guided learning from Microsoft Learn: http://aka.ms/learndotnet #DotNet #Csharp

C# Language Highlights: ValueTask

July 29, 2021 10:00 - 3 minutes - 5.88 MB Video

In this short video, Brandon  and Jasmine walk us through the use of ValueTask in C#.   Useful Links Understanding the Whys, Whats, and Whens of ValueTask Understanding how to use Task and ValueTask ValueTask Reference  

C# Language Highlights: Exhaustive case guards

July 22, 2021 09:15 - 3 minutes - 6.37 MB Video

In this short video, with learn how Exhaustive case guards work with pattern matching in C# from Cecil and David. Useful Links Pattern Matching A Tour of C#  What's new in C# 9  First steps with C#  

C# Language Highlights: Positional Pattern Matching

July 15, 2021 11:00 - 3 minutes - 5.98 MB Video

In this quick video, Cecil and David walk us through positional pattern matching works. Pattern Matching https://docs.microsoft.com/dotnet/csharp/pattern-matching?WT.mc_id=dotnet-00000-dapine A Tour of C# https://docs.microsoft.com/dotnet/csharp/tour-of-csharp/?WT.mc_id=ondotnet-c9-dapine What's new in C# 9 https://docs.microsoft.com/dotnet/csharp/whats-new/csharp-9?WT.mc_id=dotnet-00000-dapine First steps with C# https://docs.microsoft.com/learn/paths/csharp-first-steps/?WT.mc_id=dotnet...

C# Language Highlights: Null Coalescing Assignment

July 08, 2021 09:00 - 4 minutes - 7.32 MB Video

Learn about Null Coalescing Assignment in short video from James and Maira.   Useful Links ?? and ??= operators (C# reference) Nullable Reference types Understanding Nullable Reference Types First steps with C#  

Diagnosing thread pool exhaustion issues in .NET Core apps

July 06, 2021 20:24 - 23 minutes - 37.3 MB Video

In this episode, Software Engineer, Mike Rousos, joins Rich to go through some ways to diagnose thread pool exhaustion in your .NET apps. Mike discusses and demos a collection of .NET CLI tools and techniques that can be used on Windows or Linux environments. [00:00] - Intro  [01:23] - How does thread pool exhaustion occur? [03:18] - Inspecting diagnostics using dotnet-counters [09:07] - Collecting and analyzing dumps with dotnet-dump [19:42] - Switching to the async API Useful Links ...

What's New in .NET for Apache Spark v1.1.1

June 30, 2021 11:15 - 31 minutes - 41.8 MB Video

.NET for Apache Spark empowers .NET developers to participate in the world of big data analytics. In this episode, Jeremy chats with Michael Rys to discuss some of the new features and capabilities available in this release [00:00] - Intro [00:55] - What is .NET for Apache Spark? [05:04] - How can you use it? [17:10] - What’s the performance impact? [25:04] - Other v1.1.1 highlights [27:00] - Working on .NET for Apache Spark v2.0  Useful Links .NET for Apache Spark™ .NET for Apache ...

C# Language Highlights: Using Declarations

June 24, 2021 15:43 - 3 minutes - 6.99 MB Video

Learn about the “using declarations” feature in C# from Matt  and Maira. Useful Links: What’s new in C# 8.0 First steps with C#    

C# Language Highlights: Null Coalescing Operator

June 17, 2021 11:15 - 4 minutes - 6.8 MB Video

The null coalescing operator in C# is a really handy feature. Learn how it works in this short video from James and Maira   Useful Links ?? and ??= operators (C# reference) First steps with C#  

Getting started with Azure Static Web Apps

June 17, 2021 11:00 - 22 minutes - 35.3 MB Video

Azure Static Web apps makes it easier for developers to build and deploy their static apps to the cloud. In this episode, Anthony Chu joins the show to talk to us about some of the benefits of using Azure Static Web apps and also show us what the local dev experience is like [00:00] - Intro [00:49] - What are Static Web Apps [03:03] - Whats the difference between a SPA and Static Web App? [04:26] - How would you host your static web app? [10:10] - What is the local development experien...

Working with Azure AD B2C in ASP.NET

June 15, 2021 14:37 - 27 minutes - 35.2 MB Video

Azure AD B2C enables your applications to authenticate to social accounts and enterprise accounts using open standard protocols. In this episode, Christos get together with our friend JP to show us how to integrate Azure AD B2C into our .NET applications. [00:00] - Intro [01:11] - What is Azure AD B2C? [02:30] - What does it take to integrate with B2C? [05:04] - Setting up an application registration [08:42] - Creating the user flow [14:08] - Setting up a new web app using the dotnet ...

C# Language Highlights: Nullable Reference Types

June 11, 2021 17:00 - 5 minutes - 8.7 MB Video

Learn about the benefits of Nullable Reference types from Leslie https://twitter.com/lyrichardson01 and Matt https://twitter.com/CodeMillMatt in this short video.   Useful Links Nullable Reference types Understanding Nullable Reference Types First steps with C#  

Feature flags with .NET and Azure App Configuration

June 09, 2021 14:33 - 23 minutes - 37.9 MB Video

In this episode, Scott Addie joins Christos Matskas to discuss feature management in .NET apps. An ASP.NET Core 5.0 Blazor Server app is used to demonstrate the following concepts: Integrating the Feature Management library with Azure App Configuration Accessing Azure Key Vault secrets from Azure App Configuration Integrating Azure App Configuration with the .NET Configuration API Testing locally in Visual Studio with the Azure Identity library Toggling features on/off from the Azure po...

C# Language Highlights: String Interpolation

June 03, 2021 19:01 - 6 minutes - 10.4 MB Video

In this video, James and Maira explain how string interpolation works in C#. Useful Links String Interpolation (C# reference) String Interpolation in C# String Interpolation interactive tutorial Take your first steps with C#

Setting up Observability in Orleans

June 03, 2021 11:00 - 25 minutes - 39.2 MB Video

As we continue to explore Microsoft Orleans, Reuben Bond returns to chat with Rich about how we can implement observability in our Orleans applications. He reviews concepts like OpenTelemetry, call filters, and much more. [00:00] - Intro [01:20] - Brief Orleans overview [02:15] - What is Observability? [05:28] - Observability in Orleans [10:34] - Call Filters [13:35] - Request Context  [14:55] - Implementing call filters (DEMO) [21:50] - Building on existing tooling   Useful Links ...

C# Language Highlights: Async Streams

June 01, 2021 11:00 - 4 minutes - 7.63 MB Video

In this short video Leslie and Bill explain how to use Async Streams in C#. Useful Links Generate and consume async streams  C# 8 asynchronous streams Async Streams with IAsyncEnumerable in .NET Core 3  Async Streams: language proposal

Clustering in Orleans

May 27, 2021 11:45 - 19 minutes - 28.8 MB Video

Using Microsoft Orleans you can build applications that scale from a single on-premises server to globally distributed and highly-available in the cloud. In this episode, Reuben Bond joins Cecil to explain to us how we can use the builtin clustering feature in Orleans and how it works in the background. [01:15] - Clustering overview [03:17] - Setting up clustering in code [04:24] - Reviewing membership table [05:14] - Heterogeneous clusters [07:06] - Monitoring silo health [13:28] - D...

C# Language Highlights: Exception Filters

May 26, 2021 12:47 - 3 minutes - 5.29 MB Video

In this quick video, Leslie and Cecil teach us how to use exception filters in our applications.   Useful Links Exception Handling Use user-filtered exception handlers    

C# Language Highlights: Ranges

May 11, 2021 19:00 - 2 minutes - 5.07 MB Video

In this short video, Jasmine and Leslie teach us about Ranges in C#   Useful Links Ranges Ranges and Indices .NET Videos  

Supporting VB.NET in .NET 5

May 11, 2021 11:00 - 20 minutes - 40.1 MB Video

In this episode, Rich is joined by Merrie and Klaus who walk us through some of the new capabilities available for VB .NET developers building WinForms applications [01:10] - What’s the relationship between WinForms and VB? [02:24] - What was needed to get VB .NET support working? [04:52] - Benefits of moving your VB .NET apps to .NET 5 (Demo) [12:34] -  Making user of Win10 device sensors (Demo)   Useful Links What's New in Visual Basic on .NET 5? Walkthrough: Calling Windows APIs (...

C# Language Highlights: Tuple Pattern Matching

May 06, 2021 15:36 - 2 minutes - 4.89 MB Video

In this quick video, Cecil and David show us how property tuple matching works.     Useful Links Pattern Matching A Tour of C# What's new in C# 9  

C# Language Highlights: Property Pattern Matching

May 04, 2021 20:00 - 3 minutes - 6.39 MB Video

In this quick video, Cecil and David show us how property pattern matching works.     Useful Links Pattern Matching A Tour of C# What's new in C# 9  

C# Language Highlights: Property Patterning Matching

May 04, 2021 20:00 - 3 minutes - 6.39 MB Video

In this quick video, Cecil (https://twitter.com/cecilphillip) and David (https://twitter.com/davidpine7) show us how property pattern matching works.     Useful Links Pattern Matching A Tour of C# What's new in C# 9  

Using Azure Managed identities

May 04, 2021 17:43 - 17 minutes - 27.3 MB Video

Azure Managed Identity provides an identity for applications to use when connecting to resources. In this episode, Varun joins Christos to show us how us how to use managed identity along with the Azure SDK for .NET. [01:50] - What are managed identities? [05:10] - Types of managed identities  [07:13] - Creating an identity in the portal (Demo) [14:10] - Deploying your project   Useful Links What are managed identities for Azure resources? Authenticate with the Azure SDK for .NET A...

C# Language Highlights: Init only setters

April 29, 2021 16:00 - 2 minutes - 5.14 MB Video

In this short video, Jayme and Cecil teach us about init only setters in C# 9.   Useful Links Init Only Setters What’s new in C# 9 .NET Videos  

C# Language Highlights: Default Interface Methods

April 27, 2021 19:00 - 5 minutes - 8.48 MB Video

In this short video, Matt and Cecil show us how we can use default interface methods in your C# code.   Useful Links Default Interface methods Update interfaces with default interface methods in C# 8.0 .NET Videos  

Authentication for Serverless apps with Easy Auth

April 27, 2021 11:00 - 17 minutes - 27.9 MB Video

Security can be tricky, especially when comes to serverless. Azure App Service Auth (also referred to as “Easy Auth”) does provide some support for adding auth to your applications with  writing minimal or no code. In this episode, Christos is joined by Matthew Henderson from the Azure Functions team to show [01:11] - What does EasyAuth do? [04:18] - What are the supported providers ? [06:10] - Setting up an identity provider (DEMO)   Useful Links Authentication and authorization in A...

C# Language Highlights: Using Static Directive

April 22, 2021 19:00 - 2 minutes - 4.5 MB Video

In this short video, Jasmine and Cecil teach us about the using static directive in C#   Useful Links using static directive C# version history .NET Videos  

Accessibility and Perf improvements to WinForms

April 22, 2021 11:30 - 19 minutes - 31.4 MB Video

Windows Forms is been a solid UI framework for creating rich desktop client apps for the Windows Desktop. In this video, Jeremy catches up with Merrie and Igor to learn about some of the new improvements that have been added to WinForms for .NET 5. [02:00] - What are some of the improvements WinForms developers get by upgrading [09:17] - Enabling more accessibility features [12:17] - How do I enable the accessibility features? [13:10] - New built-in controls for WinForms developers.   ...

C# Language Highlights: Top-level statements

April 20, 2021 19:00 - 3 minutes - 5.36 MB Video

In this quick video, Cecil and Jayme show us how top level statements work in C# 9.   Useful Links Top level statements tutorial What’s new in C# 9

Build Automation with NUKE

April 16, 2021 17:56 - 24 minutes - 36.3 MB Video

Nuke is an open source, cross-platform build automation solution for .NET projects. NUKE prides itself on its simplicity and extensibility that makes build automation approachable for everyone. In this episode,  Matthias Koch joins Rich to give an understanding of what NUKE is and where it fits within the development cycle. [01:03] - What is NUKE? [03:00] - Where does NUKE shine? [06:45] - Setting up a NUKE configuration [11:50] - Does this ever conflict with MS Build? [14:44] - Explor...

C# Language Highlights: Target Typed new expressions

April 13, 2021 19:00 - 2 minutes - 5.46 MB Video

In this quick video, Cecil and Jayme will teach us about the new target-typed new expression in C# 9. Useful Links What's new in C# 9 Target-typed new expressions Language reference A Tour of C#   Get your questions answered on the Microsoft Q&A for .NET - http://aka.ms/dotnet-qa​ Learn .NET with free self-guided learning from Microsoft Learn: http://aka.ms/learndotnet #DotNet #CSharp

A Journey to .NET MAUI

April 06, 2021 19:10 - 18 minutes - 39.4 MB Video

.NET MAUI is the evolution of Xamarin.Forms and a major aspect of the upcoming .NET 6 release. In this episode, Maddy Leger comes on the show to tell us what .NET MAUI is and what to expect as we get closer to the release.  [01:15] - What is MAUI?  [06:12] - What’s migration path for Xamarin.Forms developers?  [07:37] - Will there be a VS Code experience ?  [09:16] - How would deployment work?  [10:30] - dotnet new maui??  [11:20] - How will shared code work?  [13:45] - How can the c...

Integrating PowerApps with .NET Web APIs

April 01, 2021 09:30 - 14 minutes - 25 MB Video

Power Apps is a low-code solution that allows you to build custom business apps that connect to business data stored in various online and on-premises data sources. In this episode, Christos chats with Greg Hurlman to show us how to add our Web APIs as connects to PowerApps. [00:54] - What are PowerApps? [02:02] - Can any Web API work with PowerApps? [03:24] - Creating a connector for you Web API [08:07] - Configuring security permissions   Useful Links What is PowerApps? Build your...

C# Source Generators

March 23, 2021 11:30 - 14 minutes - 30.2 MB Video

The source generators feature was adding in .NET 5. They allow you to do interesting things like generate additional source files that will get added to a compilation. In this video, Kathleen chats with Jared Parsons to find out what source generators are capable of. [01:15] - What are Source Generators? [05:24] - Demo: Real-time code generator for classes [10:54] - Demo: Generating INotifyPropertyChanged [13:16] - How to learn about building generators?   Useful Links Introducing So...

Building microservices with Tye

March 11, 2021 17:32 - 22 minutes - 43.7 MB Video

Tye is a tool that makes developing, testing, and deploying microservices and distributed applications easier for developers. With very little knowledge of Docker or Kubernetes, developers can run locally orchestrated projects during development, and then publish to a hosted orchestrator of their choice. In this video, Justin and Amiee come on to talk to us about how Project Tye works. They discuss the problems it solves, show us a few demos, and even talk a little about the future of the p...

Secretless apps with .NET and Azure Key Vault

March 04, 2021 16:01 - 18 minutes - 29.2 MB Video

In this episode, Scott Addie joins Christos Matskas to discuss secrets management in .NET apps. They cover the .NET SDK's Secret Manager tool as an option for your local development environment. Next, the Azure Key Vault service is introduced as a more secure option for any environment. You'll see how these two offerings integrate with the .NET Configuration API in an ASP.NET Core Blazor Server app.   Links: Blazor sample app: https://github.com/scottaddie/OnDotNetConfiguration  Get your...

Twitter Mentions

@cecilphillip 11 Episodes
@xamarinhq 6 Episodes
@davidpine7 5 Episodes
@lyrichardson01 5 Episodes
@mairacw 4 Episodes
@jamesmontemagno 4 Episodes
@jaymesingleton1 4 Episodes
@paladique 3 Episodes
@codemillmatt 3 Episodes
@thecodetraveler 3 Episodes
@stripedev 2 Episodes
@runfaster2000 1 Episode
@reubenbond 1 Episode
@billwagner 1 Episode