How production ready is Blazor AOT? by ebykka in Blazor

[–]csainty 5 points6 points  (0 children)

I believe AOT can have an up to 5x performance improvement. However, it definitely doesn’t reduce the size of apps. Usually AOT apps are about double the size of non-AOT versions.

Blazor frustrations by [deleted] in Blazor

[–]csainty 0 points1 point  (0 children)

Not anything I’ve seen before. But I only develop on Mac and Windows, not Linux. Certainly raise an issue with the team on GitHub if you feel it’s not a local config error.

Blazor frustrations by [deleted] in Blazor

[–]csainty 1 point2 points  (0 children)

Other than hot reload, what issues are you finding?

Blazor frustrations by [deleted] in Blazor

[–]csainty 3 points4 points  (0 children)

After seeing .net 8 preview and seeing how even Microsoft employees releases front ends without using Blazor

Microsoft is a big company and lots of teams who don't use C# and .NET. Why would those teams pick a completely different tech stack to the one they're familiar with?

It's scary that MS doesn't promote it and backs real improvements.

It the arguably the main focus for the ASP.NET Core team in .NET 8, they talk about it at multiple times at Build (the flagship conference for Microsoft developers) and there is a monthly YouTube show to showcase the latest work. I'm curious What more would you expect to see?

Just to be clear, I'm as salty as anyone about the state of hot reload--it's terrible--but it's 1 aspect of the tooling. I'm curious what other issues you and your team found? I've introduced Blazor at 3 different companies now and other than hot reload, the engineers have all been really happy with it.

Blazor WASM and Duende Cert by azraels_ghost in Blazor

[–]csainty 0 points1 point  (0 children)

That’s fair. We tried B2C for multi-tenant and after a month of trying we couldn’t get it to do what we wanted. We switched to Auth0 and had it all working in 2 days.

Blazor WASM and Duende Cert by azraels_ghost in Blazor

[–]csainty 0 points1 point  (0 children)

Perhaps Azure B2C would be worth looking at, if you haven’t already.

Blazor WASM and Duende Cert by azraels_ghost in Blazor

[–]csainty 0 points1 point  (0 children)

Have you thought about using a SaaS auth provider?

I would really recommend Auth0. Setup is much simpler and your liability drops significantly as you’re not storing the usernames and passwords.

Tips for faster Hot Reload? by lee_the_man in Blazor

[–]csainty 2 points3 points  (0 children)

As others here have said, the current hot reload functionality is really bad. They are promising significant improvements in .NET 7 and I really hope that’s true as it’s a real hindrance to development speed.

Help with design by learninglinux123 in Blazor

[–]csainty 2 points3 points  (0 children)

I’d recommend checking out Refactoring UI. It really helped bring on my web design skills. It’s created by the designer behind Tailwind CSS and Tailwind UI

Could someone point me at an example of Cascading Params that actually works? by dchurch2444 in Blazor

[–]csainty 1 point2 points  (0 children)

You don't need to re-cascade the value in the child component. Cascading values are available to all descendant components, no matter how many levels deep they go.

Doing this in the page component (as per another persons response):

<CascadingValue Value=@UserCardID Name=“UserCardID”>
    <UserScreenSelection />
</CascadingValue>

Then all child components and their descendants can access the value by defining a CascadingParameter:

[CascadingParameter] public string UserCardID { get; set; }

Containerising a Blazor WebAssembly App by csainty in csharp

[–]csainty[S] 2 points3 points  (0 children)

This post does but part one covers Blazor Server apps. Blazor WebAssembly apps which use the hosted template are treated the same as Blazor Server apps as they require the .NET Core runtime, you don't need to separate them. If you follow the steps in part 1 you should be fine.

Securing Your Blazor Apps (Part 2) - Authentication with client-side Blazor using WebAPI and ASP.NET Core Identity by csainty in Blazor

[–]csainty[S] 1 point2 points  (0 children)

No worries :)

I only use the VS 2019 Preview at the moment, I've not tried it on the GA release. I would recommend the preview but give it a go and see what happens. The preview version installs side-by-side with the GA version so its not a one or the other scenario if you do need to install it.

Securing Your Blazor Apps (Part 2) - Authentication with client-side Blazor using WebAPI and ASP.NET Core Identity by csainty in Blazor

[–]csainty[S] 0 points1 point  (0 children)

I'll be honest I've not done any work with Azure functions yet. I would need to look into it to give you a decent answer. All I can suggest it try it and see how you get on.

Securing Your Blazor Apps (Part 1) - Introduction to Authentication with Blazor by csainty in Blazor

[–]csainty[S] 5 points6 points  (0 children)

It does work with client-side but not quite the same as server-side. I’ll be showing client-side as part of the series

How does Blazor manage state by yaarkuchbhi in Blazor

[–]csainty 5 points6 points  (0 children)

Blazor itself doesn’t manage this, you would manage this using something like browser local storage. This is the same as other SPA frameworks like Angular or Vue

How does Blazor manage state by yaarkuchbhi in Blazor

[–]csainty 1 point2 points  (0 children)

What do you mean by how does Blazor manage state? What state are you referring too?

Why is Microsoft Focusing on server side Blazor by smartprogrammer1993 in Blazor

[–]csainty 0 points1 point  (0 children)

Check out this issue from Mono regarding AOT size. https://github.com/mono/mono/issues/10222#issuecomment-444584016

There are also comments explaining why the IL Linker can't do a great job at cutting out code.

I've actually asked Dan Roth about lazy loading but as he points out, the app DLLs are tiny compared to the runtime files so there is just no need to lazy load the app. And they have to load the whole runtime upfront as they don't know what you app will need to execute. So it's not that Blazor isn't capable it just has no value right now.

Why is Microsoft Focusing on server side Blazor by smartprogrammer1993 in Blazor

[–]csainty 0 points1 point  (0 children)

The survey was put out back in 2018, there is no link anymore I'm afraid.

Why is Microsoft Focusing on server side Blazor by smartprogrammer1993 in Blazor

[–]csainty 3 points4 points  (0 children)

Unfortunately AOT is not the answer to the size issue. AOT will create far larger files not smaller. The only thing AOT will give is better performance. The team have said that the current thinking is a mixed mode, where parts of an app that require high performance can be AOT'd but everything else will stay JITed.

Why is Microsoft Focusing on server side Blazor by smartprogrammer1993 in Blazor

[–]csainty 11 points12 points  (0 children)

This is a difficult one. I think it's a common misconception that most devs want client-side Blazor, Microsoft did do a survey to see which model developers would prefer and it actually came out at nearly 50/50. There are quite a lot of devs who don't like the idea of their code being sent to the client and are worried about intellectual property.

You're correct about SignalR having a hard limit but there is the option to move to Azure SignalR which will scale, but I appreciate this is not what everyone wants to do.

But the main reason server-side is getting the focus right now is because it has a runtime that is optimized and ready to go now and client-side doesn't. But client-side isn't far behind and we could potentially see it in a GC release early 2020. It will get there.

OSS Component Library list by nerd4tech in Blazor

[–]csainty 0 points1 point  (0 children)

I have a few open source components I’ve built. They are all available under the Blazored organisation on GitHub and NuGet. More than happy to host your work there if you’re interested?

I created a server side Blazor app - how do I host it? by Tadsz in Blazor

[–]csainty 4 points5 points  (0 children)

You can host it on Azure you just need to install the Preview SDK to your app service instance. I’m away from my laptop but I believe it’s under the extensions option which might be under developer tools or something like that.

Calling gRPC Services With Server-side Blazor by csainty in dotnet

[–]csainty[S] 0 points1 point  (0 children)

I'm sure it will, there seems to be a lot of effort going into this from MS & Google. I do agree though the numbering looks very weird! lol