This article will take a look at a neat authorization option for Blazor WebAssembly – utilizing group memberships when defining policies. This isn’t a tutorial or an overview of Blazor – rather, we start from you already having your Blazor WebAssembly project set up, and we’ll be taking a look into modifying it to use group membership claims with policy-based authorization. This is a bit trickier than using roles, which Blazor WebAssembly already supports quite well. But before that – Blazor? That sounds familiar –…Continue reading Groups-based authorization in Blazor WebAssembly
Let’s make this short and sweet. In this particular case, upgrading a Blazor WASM solution to .NET 6 broke the authentication when deployed to Azure. The same issue could probably happen to a fresh project, though. This is what you’re running into: If you open your browser console, you’ll see 2 interesting errors – first: dotnet.6.0.0.o2we6pverp.js:1 mono_wasm_runtime_ready login.microsoftonline.com/common/oauth2/v2.0/token:1 Failed to load resource: the server responded with a status of 400 (Bad Request) And a moment later, an error along the lines of: blazor.webassembly.js:1 crit: Microsoft.AspNetCore.Components.WebAssembly.Rendering.WebAssemblyRenderer…Continue reading Fixing Blazor WebAssembly .NET 6 MSAL authorization bug
Yikes – ever ran into this error after deploying your ASP.NET Core web application to an Azure App Service? Yeah, me too. And when it’s a production deployment, and the error didn’t happen in test/QA environment, that’s even more fun. This article describes a couple of ways to fix it, though. You wouldn’t believe these 3 solutions to fix the error “500.32”, and what they look like now! Oh heavens, what have I done with that subheading? All of that time watching Growth Hacking YouTube…Continue reading How to fix “HTTP Error 500.32 – ANCM Failed to Load dll”
Welp – this was not a fun issue to run into! While nobody in this day and age should use Internet Explorer for any normal usage (occasional legacy scenarios aside), there are still some luddites who do (or whose IT department makes them to). This means it’s still useful, and sometimes even required, for a web application to work even in Internet Explorer. Description of the issue So, as shown in the article’s image, when trying to access your web application using IE11, the page…Continue reading IE11 fails to load a (server-side) Blazor web app
Just a quick piece of documentation, as this piece of code has changed in different versions of .NET Core 3.0 so far a few times. Need to have things like this written down somewhere! UriHelper / NavigationManager with .NET Core 3.0 Both of these helper libraries do essentially the same thing: navigate/browse/redirect the user to a different address, component, page or view in or by your web app. What you normally use this library for is exactly the same in all versions I’ve worked with,…Continue reading How to use UriHelper or NavigationManager in .NET Core 3.0 & Blazor?
Welp – just ran into this one, and as I expect others to encounter the same issue, better document in right away! So in Blazor, I was crafting a simple component that’d display some data in a nice way. Being lazy and crafty, I thought I’d copy-paste some similar code from an earlier POC I had built, since I knew it worked. The component was overriding a method called “OnInitAsync”, and it just nicely fetched data after initialized. But alas, it didn’t. Not anymore. I…Continue reading ‘__generated__Index.OnInitAsync()’: no suitable method found to override
This post describes how to get the currently logged-in user using ASP.NET Core. This is compared with how it’s done in ASP.NET Framework. Background In ASP.NET Core (and .NET Core in general), a lot of things are done a bit differently than what you might be used to if you’re coming from the .NET Framework world. That’s what I’ve been learning building more and more stuff with it, instead of good old .NET Framework. The learning curve is definitely there, but it’s not that bad…Continue reading Current User in ASP.NET Core