One year with Blazor
Challenges were few initially and once we overcame them, they did not come back again. It is true that Blazor has a non-trivial learning curve. While setting up a simple application using the provided template is simple enough, but when it comes to the more advanced topics, it takes a little bit of trial and error. We talk about some of the challenges we overcame in some of our other blog posts, so we won't rehash them here. Suffice it to say that Blazor's runtime model has a number of gotchas that developers need to be aware of if they are writing more complex applications.
One of our favorite things about Blazor was the fact that we didn't need to maintain essentially two codebases. While yes, they are part of the same solution, when you write a traditional Asp.Net Core + Angular/Vue/React/Whatever application, you have your backend code and then you have your frontend code. Typically you have different engineers, sometimes even different teams who work on one or the other. This introduces various maintainability headaches to say the least. It also introduces extra cost, because more engineers are needed to work on a given application. Furthermore, if your dedicated frontend engineer leaves the company and he was the only one who knew Angular (yes, we have seen this happen), that will be very painful.
But the best thing is, all your code is now in C# and one engineer can work on the entire application without having to do any context switching.
No Build Tools
With Blazor you only have one thing to worry about. Does it compile? There are no extraneous tools to run or configure. You just run it like any other .Net application.
Never Going Back
Table of Contents
- Refit and Controllers
We talk about how to create apis alongside your Blazor app and how to access those apis using Refit.
- Blazor Gotchas
This article explores various Blazor pitfalls that you should be aware of.
- Blazor and HttpContext
Here we discuss how to correctly use HttpContext in a Blazor app.
- SignInManager and Blazor
Blazor and SignInManager don't play well together. Let's see how to get around that.
- One Year with Blazor
We've switched over to using Blazor exclusively a year ago. Here are our thoughts.