41554 blogs Β· [ { "id": "01a08768-a0b0-723d-ba2a-5bff5c52ce30", "title": "Write cleaner code with C# 14's null-conditional assignment operator", "url": "https://www.daveabrock.com/2025/12/14/write-cleaner-code-with-c-14s-null-conditional-assignment-operator/", "published_at": "2025-12-14T00:46:14+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff5d2ca847", "title": "Parsing Santa's workshop with strongly typed data (without the coal)", "url": "https://www.daveabrock.com/2025/12/07/parsing-santas-workshop-with-strongly-typed-data-without-the-coal/", "published_at": "2025-12-07T15:41:24+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff5e124357", "title": "Extension Properties: C# 14's Game-Changing Feature for Cleaner Code", "url": "https://www.daveabrock.com/2025/12/05/extension-properties-c-14s-game-changing-feature-for-cleaner-code/", "published_at": "2025-12-05T20:43:45+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff5e5dee7f", "title": ".NET Aspire 6: Deployment Using Azure Container Apps", "url": "https://www.daveabrock.com/2025/10/21/net-aspire-6-deployment-using-azure-container-apps/", "published_at": "2025-10-21T18:06:10+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff5ecd7d99", "title": ".NET Aspire 5: Orchestration and Service Discovery", "url": "https://www.daveabrock.com/2025/09/16/net-aspire-5-orchestration-and-service-discovery/", "published_at": "2025-09-16T17:57:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff5f94d59d", "title": ".NET Aspire 4: Integrations", "url": "https://www.daveabrock.com/2025/08/28/net-aspire-4-integrations/", "published_at": "2025-08-28T17:54:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff6077e7bd", "title": ".NET Aspire 3: Service Defaults", "url": "https://www.daveabrock.com/2025/08/13/net-aspire-3-service-defaults/", "published_at": "2025-08-13T17:50:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff607edabc", "title": ".NET Aspire 2: Exploring the Developer Dashboard", "url": "https://www.daveabrock.com/2025/07/15/net-aspire-2-exploring-the-developer-dashboard/", "published_at": "2025-07-15T19:43:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff613cbbf7", "title": ".NET Aspire 1: What is .NET Aspire?", "url": "https://www.daveabrock.com/2025/06/24/net-aspire-1-what-is-net-aspire/", "published_at": "2025-06-24T19:40:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff61aee2aa", "title": "What Is DeepSeek? Dive in Using DeepSeek, .NET Aspire, and Blazor", "url": "https://www.daveabrock.com/2025/02/04/what-is-deepseek-dive-in-using-deepseek-net-aspire-and-blazor/", "published_at": "2025-02-04T20:23:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff62969a44", "title": "Build 2022 Updates for ASP.NET Core Developers", "url": "https://www.daveabrock.com/2022/06/03/build-2022-updates-for-asp-net-core-developers/", "published_at": "2022-06-03T05:00:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff62b21460", "title": "Don't Do That, Do This: The .NET 6 Edition", "url": "https://www.daveabrock.com/2021/12/08/do-this-not-that-the-net-6-edition/", "published_at": "2021-12-08T14:28:47+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff6349ccfc", "title": ".NET 6 Has Arrived: Here Are A Few of My Favorite Things", "url": "https://www.daveabrock.com/2021/12/03/dotnet-6-favorite-things/", "published_at": "2021-12-03T12:59:58+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff63c59159", "title": "Use AzCopy to migrate files from AWS S3 to Azure Storage", "url": "https://www.daveabrock.com/2021/11/21/use-azcopy-to-migrate-files-from-aws-s3-to-azure-storage/", "published_at": "2021-11-21T16:47:50+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff64630c9e", "title": "Exploring C# 10: Use Extended Property Patterns to Easily Access Nested Properties", "url": "https://www.daveabrock.com/2021/11/18/exploring-c-10-use-extended-property-patterns-to-easily-access-nested-properties/", "published_at": "2021-11-18T01:34:28+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff651f5e57", "title": "Exploring Fiddler Jam: What's New?", "url": "https://www.daveabrock.com/2021/11/06/exploring-fiddler-jam-whats-new/", "published_at": "2021-11-06T15:00:42+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff652a1be8", "title": "Saying goodbye to The .NET Stacks", "url": "https://www.daveabrock.com/2021/11/04/bye-dotnet-stacks/", "published_at": "2021-11-04T12:42:14+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff65785c64", "title": "The .NET Stacks #68: 🍿 What a week", "url": "https://www.daveabrock.com/2021/10/26/dotnet-stacks-68/", "published_at": "2021-10-26T23:27:37+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff65aa47e3", "title": "The .NET Stacks #67: πŸ†• .NET 6 RC2 arrives", "url": "https://www.daveabrock.com/2021/10/24/dotnet-stacks-67/", "published_at": "2021-10-24T16:39:29+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff663d5a31", "title": "Exploring C# 10: Global Using Declarations", "url": "https://www.daveabrock.com/2021/10/21/csharp-10-global-usings/", "published_at": "2021-10-21T03:18:57+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff666b1f6e", "title": "The .NET Stacks #66: πŸ§€ Who moved my cheese?", "url": "https://www.daveabrock.com/2021/10/18/dotnet-stacks-66/", "published_at": "2021-10-18T00:38:34+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff67215139", "title": "The .NET Stacks #65: πŸ’‘ Is there hope for a modern C# model?", "url": "https://www.daveabrock.com/2021/10/10/dotnet-stacks-65/", "published_at": "2021-10-10T16:33:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff6743f19a", "title": "Exploring C# 10: Save Space with File-Scoped Namespaces", "url": "https://www.daveabrock.com/2021/10/05/csharp-10-file-scoped-namespaces/", "published_at": "2021-10-05T03:35:27+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff6764f3a1", "title": "The .NET Stacks #64: ⚑ Looking at Functions support in .NET 6", "url": "https://www.daveabrock.com/2021/10/03/dotnet-stacks-64/", "published_at": "2021-10-03T16:26:27+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff685a6edb", "title": "The .NET Stacks #63: πŸ—ž .NET 6 is for real now", "url": "https://www.daveabrock.com/2021/09/26/dotnet-stacks-63/", "published_at": "2021-09-26T06:00:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff68ee443c", "title": "The .NET Stacks #62: πŸ‘‹ And we're back", "url": "https://www.daveabrock.com/2021/09/19/dotnet-stacks-62/", "published_at": "2021-09-19T00:05:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff693e3948", "title": "Exploring Fiddler Jam: Get Your Time Back by Solving Issues Faster", "url": "https://www.daveabrock.com/2021/08/25/exploring-fiddler-jam/", "published_at": "2021-08-25T13:38:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff69c9007b", "title": "The .NET Stacks #61: 🚌 Let's go on a community blog tour", "url": "https://www.daveabrock.com/2021/08/15/dotnet-stacks-61/", "published_at": "2021-08-15T16:48:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff6a752f51", "title": "The .NET Stacks, #60: πŸ“Logging improvements in .NET 6", "url": "https://www.daveabrock.com/2021/08/08/dotnet-stacks-60/", "published_at": "2021-08-08T17:14:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff6b0def11", "title": "The .NET Stacks #59: πŸŽ‡ When your Copilot is mostly right", "url": "https://www.daveabrock.com/2021/08/01/dotnet-stacks-59/", "published_at": "2021-08-01T15:53:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff6b51c124", "title": "The .NET Stacks #58: πŸ“ƒ 6 things about .NET 6 Preview 6", "url": "https://www.daveabrock.com/2021/07/25/dotnet-stacks-58/", "published_at": "2021-07-25T18:36:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff6b69fb52", "title": "Unhandled Exceptions in Blazor Server with Error Boundaries", "url": "https://www.daveabrock.com/2021/07/21/blazor-error-boundaries/", "published_at": "2021-07-21T14:54:52+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff6c28a4c5", "title": "The .NET Stacks #57: 🧐 Taking a look at Blazor Error Boundaries", "url": "https://www.daveabrock.com/2021/07/18/dotnet-stacks-57/", "published_at": "2021-07-18T23:00:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff6c5ac129", "title": "The .NET Stacks #56: Keeping it short this week", "url": "https://www.daveabrock.com/2021/07/04/dotnet-stacks-56/", "published_at": "2021-07-04T14:17:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff6cdfb5ec", "title": "The .NET Stacks #55: πŸ†• Ready or not, here comes .NET 6 Preview 5", "url": "https://www.daveabrock.com/2021/06/27/dotnet-stacks-55/", "published_at": "2021-06-27T13:25:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff6d0e6fcf", "title": "5 Development Best Practices That Will Help You Craft Better Tests", "url": "https://www.daveabrock.com/2021/06/23/development-best-practices-better-tests/", "published_at": "2021-06-23T15:04:10+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff6d3a47d7", "title": "The .NET Stacks #54: πŸŽ€ Putting a bow on .NET 6 date and time updates", "url": "https://www.daveabrock.com/2021/06/20/dotnet-stacks-54/", "published_at": "2021-06-20T15:30:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff6d6effd0", "title": "Your guide to REST API versioning in ASP.NET Core", "url": "https://www.daveabrock.com/2021/06/16/rest-api-versioning-aspnet-core/", "published_at": "2021-06-16T13:39:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff6dfc5173", "title": "Upgrading a Blazor WebAssembly Azure Static Web App from .NET 5 to .NET 6", "url": "https://www.daveabrock.com/2021/06/15/upgrade-blazor-static-app-net-5-net-6/", "published_at": "2021-06-15T23:30:50+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff6e71ee9a", "title": "The .NET Stacks #53: πŸš€ This issue was compiled ahead of time", "url": "https://www.daveabrock.com/2021/06/13/dotnet-stacks-53/", "published_at": "2021-06-13T06:00:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff6f201727", "title": "Low Ceremony, High Value: A Tour of Minimal APIs in .NET 6", "url": "https://www.daveabrock.com/2021/06/09/low-ceremony-high-value-a-tour-of-minimal-apis-in-net-6/", "published_at": "2021-06-09T14:54:40+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff6f416026", "title": "The .NET Stacks #52: πŸŽ‚ Happy birthday to us", "url": "https://www.daveabrock.com/2021/05/31/dotnet-stacks-52/", "published_at": "2021-05-31T23:44:41+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff6f4dd85e", "title": "The .NET Stacks #51: πŸ‘·β€β™‚οΈ The excitement is Build-ing", "url": "https://www.daveabrock.com/2021/05/29/dotnet-stacks-51/", "published_at": "2021-05-29T12:25:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff6fca660c", "title": "The .NET Stacks #50: πŸ†• What's new with C# 10?", "url": "https://www.daveabrock.com/2021/05/23/dotnet-stacks-50/", "published_at": "2021-05-23T15:45:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff6fe56261", "title": "The .NET Stacks #49: 🌟 Is reflection really that bad?", "url": "https://www.daveabrock.com/2021/05/15/dotnet-stacks-49/", "published_at": "2021-05-15T10:30:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff708c6652", "title": "Azure Static Web Apps is production-ready: These are my 5 favorite things", "url": "https://www.daveabrock.com/2021/05/13/azure-static-web-apps-favorite-things/", "published_at": "2021-05-13T01:21:12+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff71279c10", "title": "Migrating my site from Jekyll to Ghost", "url": "https://www.daveabrock.com/2021/05/10/migrating-my-site-jekyll-ghost/", "published_at": "2021-05-10T16:17:47+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff71ecfce4", "title": "The .NET Stacks #48: ⚑ Sockets. Sockets everywhere.", "url": "https://www.daveabrock.com/2021/05/08/dotnet-stacks-48/", "published_at": "2021-05-08T23:26:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff7259b5ae", "title": "The .NET Stacks #47: 🧨 Now with 32 more bits", "url": "https://www.daveabrock.com/2021/05/01/dotnet-stacks-47/", "published_at": "2021-05-01T23:13:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff730df809", "title": "Make microservices fun again with Dapr", "url": "https://www.daveabrock.com/2021/04/29/meet-dapr/", "published_at": "2021-04-29T00:00:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff7354b5c7", "title": "The .NET Stacks #46: πŸ“’ What's new with your favorite IDE", "url": "https://www.daveabrock.com/2021/04/24/dotnet-stacks-46/", "published_at": "2021-04-24T00:00:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff7427011d", "title": "Meet the .NET Upgrade Assistant, Your .NET 5 Moving Company", "url": "https://www.daveabrock.com/2021/04/18/meet-dotnet-upgrade-assistant-your-dotnet-5-moving-company/", "published_at": "2021-04-18T00:00:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff7435a908", "title": "The .NET Stacks #45: πŸ”₯ At last, hot reload is (initially) here", "url": "https://www.daveabrock.com/2021/04/17/dotnet-stacks-45/", "published_at": "2021-04-17T00:00:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff74444835", "title": "Instant Feedback Is Here: Introducing Hot Reload in .NET 6", "url": "https://www.daveabrock.com/2021/04/13/instant-feedback-is-here-introducing-hot-reload-in-dotnet-6/", "published_at": "2021-04-13T00:00:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff74c7f8b7", "title": "The .NET Stacks #44: 🐦 APIs that are light as a feather", "url": "https://www.daveabrock.com/2021/04/10/dotnet-stacks-44/", "published_at": "2021-04-10T00:00:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff7543aabd", "title": "Working with the Blazor DynamicComponent", "url": "https://www.daveabrock.com/2021/04/08/blazor-dynamic-component/", "published_at": "2021-04-08T00:00:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff7555a565", "title": "The .NET Stacks #43: πŸ“… DateTime might be seeing other people", "url": "https://www.daveabrock.com/2021/04/03/dotnet-stacks-43/", "published_at": "2021-04-03T00:00:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff76492258", "title": "Use Azure Static Web Apps with Azure DevOps pipelines", "url": "https://www.daveabrock.com/2021/04/01/static-web-apps-azure-pipelines/", "published_at": "2021-04-01T00:00:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff768b6b72", "title": "The .NET Stacks #42: πŸ”Œ When Active Directory isn't so active", "url": "https://www.daveabrock.com/2021/03/27/dotnet-stacks-42/", "published_at": "2021-03-27T00:00:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff76eeebf4", "title": "The .NET Stacks #41: 🎁 Your monthly preview fix has arrived", "url": "https://www.daveabrock.com/2021/03/20/dotnet-stacks-41/", "published_at": "2021-03-20T00:00:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff77dd9b92", "title": "Blast Off with Blazor: Add a shared dialog component", "url": "https://www.daveabrock.com/2021/03/17/blast-off-blazor-add-dialog/", "published_at": "2021-03-17T00:00:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff78331839", "title": "Use C# to upload files to a GitHub repository", "url": "https://www.daveabrock.com/2021/03/14/upload-files-to-github-repository/", "published_at": "2021-03-14T00:00:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff78ddf524", "title": "The .NET Stacks #40: πŸ“š Ignite is in the books", "url": "https://www.daveabrock.com/2021/03/13/dotnet-stacks-40/", "published_at": "2021-03-13T00:00:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff79a7edf3", "title": "Ask About Azure: Why do resource groups need a location?", "url": "https://www.daveabrock.com/2021/03/08/ask-azure-resource-group-locations/", "published_at": "2021-03-08T00:00:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff79c69c02", "title": "The .NET Stacks #39: πŸ”₯ Is Dapr worth the hype?", "url": "https://www.daveabrock.com/2021/03/06/dotnet-stacks-39/", "published_at": "2021-03-06T00:00:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff7a3a442f", "title": "The .NET Stacks #38: πŸ“’ I hope you like announcements", "url": "https://www.daveabrock.com/2021/02/27/dotnet-stacks-38/", "published_at": "2021-02-27T00:00:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff7a5ad331", "title": "Use Azure Functions with .NET 5", "url": "https://www.daveabrock.com/2021/02/24/functions-dotnet-5/", "published_at": "2021-02-24T00:00:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff7a7b7125", "title": "Dev Discussions: Cecil Phillip", "url": "https://www.daveabrock.com/2021/02/21/dev-discussions-cecil-phillip/", "published_at": "2021-02-21T00:00:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff7b252fab", "title": "The .NET Stacks #37: 😲 When your private NuGet feed isn't so private", "url": "https://www.daveabrock.com/2021/02/20/dotnet-stacks-37/", "published_at": "2021-02-20T00:00:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff7bc610c2", "title": "Build a Blazor 'Copy to Clipboard' component with a Markdown editor", "url": "https://www.daveabrock.com/2021/02/18/copy-to-clipboard-markdown-editor/", "published_at": "2021-02-18T00:00:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff7c84e2f0", "title": "The .NET Stacks #36: ⚑ Azure Functions and some Microsoft history", "url": "https://www.daveabrock.com/2021/02/13/dotnet-stacks-36/", "published_at": "2021-02-13T00:00:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff7d7f04f2", "title": "How to nuke sensitive commits from your GitHub repository", "url": "https://www.daveabrock.com/2021/02/09/nuke-sensitive-commits-from-github/", "published_at": "2021-02-09T00:00:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff7df98d36", "title": "The .NET Stacks #35: πŸ”‘ Nothing is certain but death and expiring certificates", "url": "https://www.daveabrock.com/2021/02/06/dotnet-stacks-35/", "published_at": "2021-02-06T00:00:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff7e1a85f9", "title": "How to achieve style inheritance with Blazor CSS isolation", "url": "https://www.daveabrock.com/2021/01/31/blazor-css-iso-inheritance-scopes/", "published_at": "2021-01-31T00:00:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff7ef6f4a7", "title": "The .NET Stacks #34: πŸŽ™ Visual Studio gets an update, and you get a rant", "url": "https://www.daveabrock.com/2021/01/30/dotnet-stacks-34/", "published_at": "2021-01-30T00:00:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff7f4903a3", "title": "Signed HTTP Exchanges: A path for Blazor WebAssembly instant runtime loading?", "url": "https://www.daveabrock.com/2021/01/26/signed-http-exchanges-cdn-cache/", "published_at": "2021-01-26T00:00:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff7faef452", "title": "The .NET Stacks #33: πŸš€ A blazing conversation with Steve Sanderson", "url": "https://www.daveabrock.com/2021/01/23/dotnet-stacks-33/", "published_at": "2021-01-23T00:00:00+00:00" }, { "id": "01a08768-a0b0-723d-ba2a-5bff809dc13c", "title": "How to use configuration with C# 9 top-level programs", "url": "https://www.daveabrock.com/2021/01/19/config-top-level-programs/", "published_at": "2021-01-19T00:00:00+00:00" }, { "id": "01a08768-a0b1-7087-8f69-9639b1233b6f", "title": "Dev Discussions: Steve Sanderson", "url": "https://www.daveabrock.com/2021/01/17/dev-discussions-steve-sanderson/", "published_at": "2021-01-17T00:00:00+00:00" }, { "id": "01a08768-a0b1-7087-8f69-9639b1bee849", "title": "The .NET Stacks #32: 😎 SSR is cool again", "url": "https://www.daveabrock.com/2021/01/16/dotnet-stacks-32/", "published_at": "2021-01-16T00:00:00+00:00" }, { "id": "01a08768-a0b1-7087-8f69-9639b2932d55", "title": "Blast Off with Blazor: Build a search-as-you-type box", "url": "https://www.daveabrock.com/2021/01/14/blast-off-blazor-search-box/", "published_at": "2021-01-14T00:00:00+00:00" }, { "id": "01a08768-a0b1-7087-8f69-9639b340e90f", "title": "The .NET Stacks #31: πŸ₯³ 10 things to kick off '21", "url": "https://www.daveabrock.com/2021/01/09/dotnet-stacks-31/", "published_at": "2021-01-09T00:00:00+00:00" }, { "id": "01a08768-a0b1-7087-8f69-9639b3fa4b34", "title": "More with Gruut: Use the Microsoft Bot Framework to analyze emotion with the Azure Face API", "url": "https://www.daveabrock.com/2021/01/05/azure-bot-service-image-emotion-api/", "published_at": "2021-01-05T00:00:00+00:00" }, { "id": "01a08768-a0b1-7087-8f69-9639b44c4782", "title": "Blast Off with Blazor: Prerender a Blazor Web Assembly application", "url": "https://www.daveabrock.com/2020/12/27/blast-off-blazor-prerender-wasm/", "published_at": "2020-12-27T00:00:00+00:00" }, { "id": "01a08768-a0b1-7087-8f69-9639b4f7e20c", "title": "The .NET Stacks #30: πŸ₯‚ See ya, 2020", "url": "https://www.daveabrock.com/2020/12/19/dotnet-stacks-30/", "published_at": "2020-12-19T00:00:00+00:00" }, { "id": "01a08768-a0b1-7087-8f69-9639b547ae45", "title": "Blast Off with Blazor: Build a responsive image gallery", "url": "https://www.daveabrock.com/2020/12/16/blast-off-blazor-responsive-gallery/", "published_at": "2020-12-16T00:00:00+00:00" }, { "id": "01a08768-a0b1-7087-8f69-9639b59b4651", "title": "Blast Off with Blazor: Integrate Cosmos DB with Blazor WebAssembly", "url": "https://www.daveabrock.com/2020/12/13/blast-off-blazor-cosmos/", "published_at": "2020-12-13T00:00:00+00:00" }, { "id": "01a08768-a0b1-7087-8f69-9639b6213fef", "title": "The .NET Stacks #29: More on route-to-code and some Kubernetes news", "url": "https://www.daveabrock.com/2020/12/12/dotnet-stacks-29/", "published_at": "2020-12-12T00:00:00+00:00" }, { "id": "01a08768-a0b1-7087-8f69-9639b6fac9c7", "title": "Use local function attributes with C# 9", "url": "https://www.daveabrock.com/2020/12/09/local-function-attributes-c-sharp-9/", "published_at": "2020-12-09T00:00:00+00:00" }, { "id": "01a08768-a0b1-7087-8f69-9639b70f5c25", "title": "Automate a Markdown links page with Pinboard and C#", "url": "https://www.daveabrock.com/2020/12/07/make-link-list-with-markdown-and-with-c-sharp/", "published_at": "2020-12-07T00:00:00+00:00" }, { "id": "01a08768-a0b1-7087-8f69-9639b75fe309", "title": "The .NET Stacks, #28: The future of MVC and themes of .NET 6", "url": "https://www.daveabrock.com/2020/12/05/dotnet-stacks-28/", "published_at": "2020-12-05T00:00:00+00:00" }, { "id": "01a08768-a0b1-7087-8f69-9639b8232234", "title": "Use ASP.NET Core route-to-code for simple JSON APIs", "url": "https://www.daveabrock.com/2020/12/04/migrate-mvc-to-route-to-code/", "published_at": "2020-12-04T00:00:00+00:00" }, { "id": "01a08768-a0b1-7087-8f69-9639b8f67055", "title": "The .NET Stacks #27: Giving some πŸ’œ to under-the-radar ASP.NET Core 5 features", "url": "https://www.daveabrock.com/2020/11/28/dotnet-stacks-27/", "published_at": "2020-11-28T00:00:00+00:00" }, { "id": "01a08768-a0b1-7087-8f69-9639b9c6dd90", "title": "Use Azure Functions, Azure Storage blobs, and Cosmos DB to copy images from public URLs", "url": "https://www.daveabrock.com/2020/11/25/images-azure-blobs-cosmos/", "published_at": "2020-11-25T00:00:00+00:00" }, { "id": "01a08768-a0b1-7087-8f69-9639ba04bce0", "title": "Blast Off with Blazor: Isolate and test your service dependencies", "url": "https://www.daveabrock.com/2020/11/22/blast-off-blazor-service-dependencies/", "published_at": "2020-11-22T00:00:00+00:00" }, { "id": "01a08768-a0b1-7087-8f69-9639ba27f687", "title": "The .NET Stacks #26: .NET 5 has arrived, let's party", "url": "https://www.daveabrock.com/2020/11/21/dotnet-stacks-26/", "published_at": "2020-11-21T00:00:00+00:00" }, { "id": "01a08768-a0b1-7087-8f69-9639badda702", "title": "Simplify your ASP.NET Core API models with C# 9 records", "url": "https://www.daveabrock.com/2020/11/18/simplify-api-models-with-records/", "published_at": "2020-11-18T00:00:00+00:00" }, { "id": "01a08768-a0b1-7087-8f69-9639bae5f619", "title": "Use OpenAPI, Swagger UI, and HttpRepl in ASP.NET Core 5 to supercharge your API development", "url": "https://www.daveabrock.com/2020/11/16/httprepl-openapi-swagger-netcoreapis/", "published_at": "2020-11-16T00:00:00+00:00" }, { "id": "01a08768-a0b1-7087-8f69-9639bb23a32d", "title": "The .NET Stacks #25: .NET 5 officially launches tomorrow", "url": "https://www.daveabrock.com/2020/11/13/dotnet-stacks-25/", "published_at": "2020-11-13T00:00:00+00:00" }, { "id": "01a08768-a0b1-7087-8f69-9639bb8bd235", "title": "Blast Off with Blazor: Use .NET 5 to update the HTML head from a Blazor component", "url": "https://www.daveabrock.com/2020/11/08/blast-off-blazor-update-head/", "published_at": "2020-11-08T00:00:00+00:00" } ] posts Claim your blog
Back to daveabrock.com
Blog Β· corpus.blog/blogs/daveabrock.com/posts

daveabrock.com

daveabrock.com

2025

2022

2021

2020