Blazor WebAssembly in .NET 8 - Why It Is Still Extremely Valuable

แชร์
ฝัง
  • เผยแพร่เมื่อ 2 ก.พ. 2025

ความคิดเห็น • 71

  • @edgetthilimire1077
    @edgetthilimire1077 5 หลายเดือนก่อน +2

    Been using Blazor WASM in production for years. It’s great. It will be GOAT when it supports running ONNX models with GPU acceleration.

    • @IAmTimCorey
      @IAmTimCorey  5 หลายเดือนก่อน +1

      That seems more like a desktop feature rather than a WASM feature.

    • @edgetthilimire1077
      @edgetthilimire1077 5 หลายเดือนก่อน +2

      @@IAmTimCorey I did attempt ONNX with Maui Blazor, I dropped it in favor of Avalonia Blazor. This was due to lack of support for hardware acceleration on arm-Mac.
      I think Maui can do ONNX with hardware acceleration on arm-Mac now, I haven’t verified this yet.
      All that said, I still would like to be able to run ONNX models, with GPU acceleration, from the browser with Blazor.
      Don’t underestimate small models, and don’t overlook, the massive performance boost, from hardware acceleration.
      P.s. Thanks for the excellent content.

  • @andergarcia1115
    @andergarcia1115 4 หลายเดือนก่อน

    Thanks Master, for sharing valuable insights to keep us ahead.

    • @IAmTimCorey
      @IAmTimCorey  4 หลายเดือนก่อน

      You are welcome.

  • @spauldingexperience
    @spauldingexperience 4 หลายเดือนก่อน

    I have yet to find an answer to this question. Have been looking everywhere!
    Nucance steps:
    1) I have a blazor app and I load a standard blazor page.
    2) I have a threaded background process that saves an unrelated HTM file to the file system.
    3) Once that background process completes and the files changed, my original unrelated blazor page refreshes.
    4) This is a nuisance when I'm writing 100 htm pages in the background With no way to turn this feature off in a production environment.
    Tim, you provide an excellent service and I have spoken with you in person before. I greatly respect and appreciate what you give to our development environments. I look forward to hearing your (and the community's) feedback on this topic.
    Thank you.

    • @lemonade2345-j4e
      @lemonade2345-j4e 4 หลายเดือนก่อน

      This is a question better suited for stackoverflow...

    • @BigBlueRabbit
      @BigBlueRabbit 3 หลายเดือนก่อน

      My (total guess) would be that you need to make sure your files are uploaded to a location on the server that is outside the folder your web app was served from. It might be that IIS is detecting a change to the folder contents and deciding it needs to serve up a new version of your web application to the user each time.

  • @njumuleather2803
    @njumuleather2803 3 หลายเดือนก่อน

    have you covered Blazor Server applications that handle session storage sample code where you keep logged user details and you can tell the logged User

  • @uppercat7268
    @uppercat7268 5 หลายเดือนก่อน +1

    When using the PWA option and installing the app on the client, what happend if there is a new version/update of that appilcation. Will the app on the client get updated automatically or is the user forced to reintall the app?

    • @IAmTimCorey
      @IAmTimCorey  5 หลายเดือนก่อน +5

      When a new version is out (basically, an update to the website), the app will load the old version one more time. In the background, it will download the changes to the site. Then, when the user next uses the app, they will use the new version. That way they can continue to use the older version until the new one is downloaded rather than having the app go down until the changes are downloaded.

    • @uppercat7268
      @uppercat7268 5 หลายเดือนก่อน

      @@IAmTimCorey Thanks for your comprehensive answer.

    • @AdeyinkaAdegbenro
      @AdeyinkaAdegbenro 5 หลายเดือนก่อน

      ​@@IAmTimCorey, Blazor WASM PWA updated? I built an application sometimes ago, Blazor WASM PWA, after publishing changes, it never get downloaded no matter how many times I restart the application, I had to pull off the app and made it just Blazor WASM without PWA. It was an annoying effort.

  • @waleedbensumaidea3947
    @waleedbensumaidea3947 5 หลายเดือนก่อน

    thank you so much for this video , it would be great if you come back to make advanced lessons about blazor

    • @IAmTimCorey
      @IAmTimCorey  5 หลายเดือนก่อน +2

      Thanks for the suggestion. Please add it to the list on the suggestion site so others can vote on it as well: suggestions.iamtimcorey.com/

  • @magicsmoke0
    @magicsmoke0 หลายเดือนก่อน

    What about the slow initial load time I've heard from many people? That's a non-starter for me since I know how sensitive Google is to performance and page rankings.

    • @IAmTimCorey
      @IAmTimCorey  หลายเดือนก่อน

      The issue here is that WebAssembly sites (including the Blazor variety) really aren't for websites. They are for web applications. You probably don't need to have an offline version of your local pizza restaurant's website. However, that's not the only type of site out there. Web applications are for doing work. For example, when I lived in Pennsylvania, Comcast (local Internet and cable TV provider) used a PWA for their ticketing system. Their technicians would connect to the server in the morning from whatever device they were using (tablet, personal phone, work phone, etc.) They would download the tickets for the day and then they would go work at customers' houses. Often, they would be working in rural areas on getting Internet services hooked up or fixed, which meant they didn't always have cell coverage. That wasn't a problem. They could take pictures, document the issue(s), write up a report, and get a customer signature without the application needing to be online. When they got back into range, the app would sync the data. Web applications don't need to have great Google page rankings. The sales site does, but not the application's site. That's the separation.
      To be clear, page load isn't typically a big issue if you are doing things right. You can load an entire application in less than 2MB. That sounds like a lot and in SEO terms it can be since you don't get first page rendering until after that downloads and runs. However, if you go to any news site or sports news site and you watch the page download, you will see 10MB+ easily. Often, those pages go above 20MB of content.
      If you are looking to build a website that has some performance benefits of WASM while still being SEO friendly and having a fast first page load, look at Blazor Web Apps. You can mix project types and even have a Server component convert to a WASM component in the background. This gives you the best of both worlds. What it doesn't do is give you the fully offline capable PWA option that Blazor WebAssembly does.

  • @JohnMarsing
    @JohnMarsing 5 หลายเดือนก่อน +1

    Looking for more videos on this. You mentioned local storage, I was wondering if you could leverage SQLite as one of the videos
    Thanks

    • @IAmTimCorey
      @IAmTimCorey  5 หลายเดือนก่อน +5

      For the browser, I typically just use LocalStorage instead of trying to make SQLite work. I find it easier and less problematic. I'll be doing a video or two on LocalStorage and how to use it.

  • @marko5734
    @marko5734 4 หลายเดือนก่อน +1

    Do you believe that in the near future there will be more job openings for Blazor? It's hard to find junior Blazor jobs..

    • @IAmTimCorey
      @IAmTimCorey  4 หลายเดือนก่อน +1

      I do. It takes time for a new technology to be highly in demand since businesses don't just switch technologies quickly. Also, if a job is asking for ASP.NET Core developers, that could include Blazor. If not now, soon. Also, you will be using a lot of the same technologies, since they both use the same web framework.

    • @marko5734
      @marko5734 4 หลายเดือนก่อน

      @@IAmTimCorey I hope for that, it's great technology. Thank you very much for the response. I appreciate it.

    • @liam2161
      @liam2161 หลายเดือนก่อน +1

      We have critical applications running on Blazor and developers are certainly required. I don't see Microsoft binning Blazor anytime soon.

    • @marko5734
      @marko5734 หลายเดือนก่อน +1

      @@liam2161 That's really great to hear. Thanks for sharing, wish you a lot of success with Blazor

  • @AL-kn4yx
    @AL-kn4yx 5 หลายเดือนก่อน +1

    Is Blazor on the way of making MVC and MVVM obsolete? Is there a point for someone who is starting with .NET and Blazor to learn MVC or MVVM?

    • @IAmTimCorey
      @IAmTimCorey  5 หลายเดือนก่อน +1

      MVC and MVVM are just design patterns. I'm assuming you are referring to ASP.NET Core MVC, which is a web project type named after the pattern it uses. There is definitely a benefit to learning MVC and the other web project types, since options are good. Not every situation will require the same solution.

  • @alirezakarimi8685
    @alirezakarimi8685 3 หลายเดือนก่อน

    Please help me : This browser does not support WebAssembly.
    This problem has occurred in some clients with Windows 11 and google chrome, whose browser is updated.

    • @IAmTimCorey
      @IAmTimCorey  2 หลายเดือนก่อน +1

      WebAssembly is supported by all of the major browsers, including Google Chrome: caniuse.com/wasm
      That means the feature is probably turned off in the browser's settings.

  • @johaneklund90
    @johaneklund90 5 หลายเดือนก่อน

    So if I want my Blazor WebAssembly project to access and API with an API key. I should build another API that does that interaction and also stores all the sensitive information like the API key?

    • @IAmTimCorey
      @IAmTimCorey  5 หลายเดือนก่อน +2

      If you need to have sensitive information then yes, wrap that in an API. So yes, your API might call another API. That's ok.

    • @johaneklund90
      @johaneklund90 5 หลายเดือนก่อน

      ​@@IAmTimCorey Then restrict the access to the "middleware" in some way? By IP address or some other server setting, right? So that only the blazor webassembly site can use it.

    • @liam2161
      @liam2161 หลายเดือนก่อน

      The user logging into Blazor would have a jwt or token to access the API. You shouldn't have a static key or some form of restrictions. It should be validated from the user context not the application.

  • @keyser456
    @keyser456 5 หลายเดือนก่อน +5

    Skipping over the Authentication for Blazor WASM. Good move, Tim. It's a freaking nightmare.

    • @EekChocolate
      @EekChocolate 5 หลายเดือนก่อน

      If you're using cookie auth, it's not too bad. Every other method, though... yeah... Not great. Especially if you have to integrate your authentication with some kind of third-party software that doesn't abide by OAuth, Google, Facebook, or Microsoft Identity Platform standards.

    • @edgetthilimire1077
      @edgetthilimire1077 5 หลายเดือนก่อน +1

      I assess the difficulty level to be equivalent to angular/react if you’re doing JWT

    • @keyser456
      @keyser456 5 หลายเดือนก่อน

      @@EekChocolate I had to turn to IdentityServer, and getting that to play nice with SSL + CORS via SignalR... I got there, eventually, but yeesh!

    • @IAmTimCorey
      @IAmTimCorey  5 หลายเดือนก่อน +10

      I'm working on some demos for authentication with WASM. Fun times.

    • @montytrollic
      @montytrollic 5 หลายเดือนก่อน +5

      Actually everyone on YT is doing that... there is small to none portion of videos about auth in Blazor. In most cases they just show some dead simple example with cookies usage and thats all. When you actually jump into Blazor and you start working on big project, you will hit the wall quite fast.

  • @andresarias5312
    @andresarias5312 5 หลายเดือนก่อน

    what's the Best way to Manage user session in Blazor WASM Standalone project? is it possible to use cookies?

    • @IAmTimCorey
      @IAmTimCorey  5 หลายเดือนก่อน +1

      It is possible to use cookies or SessionStorage. Either works. You hear horror stories about using SessionStorage/LocalStorage, but these are way overblown. The technical attack surface is slightly bigger, but we are talking about 0.01% vs 0.02%, if that.

  • @cenkyenikoylu2670
    @cenkyenikoylu2670 5 หลายเดือนก่อน +1

    Hi Tim, Are you going to make a Login and Authorization video for WinUI in the real world soon? I think it is very important especially for NavigationView control which is used by everyone. There is no content creator supported by Microsoft for WinUI. I don't understand why this field is empty. There are many people in Blazor, MAUI or Azure but WinUI seems to be left empty. Thanks.

    • @IAmTimCorey
      @IAmTimCorey  5 หลายเดือนก่อน +4

      The reason why it is fairly empty is because WinUI isn't even well supported by Microsoft. They recently recommended people use WinForms or WPF for desktop development. WinUI is rather restricted in what it can do, which limits its usage in corporate environments.

    • @SteveC-t9t
      @SteveC-t9t 5 หลายเดือนก่อน

      @@IAmTimCorey Actually there was a video just posted on the Windows Dev channel called "Building a Modern, Native Application for Windows: Which UI Framework Should You Choose?" where they said Microsoft recommends using WPF or WinUI. So they keep saying publically that their focus is on WinUI and WPF.

  • @Omar.bin.khattab
    @Omar.bin.khattab 5 หลายเดือนก่อน

    thanks tim .. i think wasm will be the new generation for web app that run over client side and i think other framework like angular and react will try to do it and i think security will be good in the future wasm is a sand box not like other framework like angular

    • @IAmTimCorey
      @IAmTimCorey  5 หลายเดือนก่อน +1

      WASM is a great option for hitting that middle ground between desktop app and website.

  • @undefined418
    @undefined418 5 หลายเดือนก่อน +9

    I really want WASM to succeed. I hate that blazor is used in most examples. Standalone is SO much better but a pain to figure out. Docs are all over the place in my opinion

    • @keyser456
      @keyser456 5 หลายเดือนก่อน +1

      Blazor is Microsoft's entry into WASM.

    • @IAmTimCorey
      @IAmTimCorey  5 หลายเดือนก่อน +3

      I'm not sure what you mean by standalone WASM. Do you mean WASM running just JavaScript instead of Blazor? Because Blazor is how you run C# code on WASM. And Blazor makes it so easy to do what you need to do.

    • @undefined418
      @undefined418 5 หลายเดือนก่อน +1

      @@IAmTimCorey Yes exactly! I've tried to play around with WASM. As fair as I know, it's how you run c# code in your browser. I've managed to run it within a django / react environment. My road to this environment was very bumpy. I've made a couple of emulators and I thought c# would be a bit faster. When reasearching this I found blazor. Blazor standalone, some wasm version without blazor at all, and that was about it I believe. That last one was/is interesting to me because I didnt need the blazor framework at all. (this was before the wasm update from a week back or so)

    • @undefined418
      @undefined418 5 หลายเดือนก่อน

      emscripten is what I ment

  • @ishfaqbabar1192
    @ishfaqbabar1192 5 หลายเดือนก่อน

    hi, Please make a video to design and implement a dashboard using SignalR and blazor in .net 8

    • @IAmTimCorey
      @IAmTimCorey  5 หลายเดือนก่อน +1

      Thanks for the suggestion. Please add it to the list on the suggestion site so others can vote on it as well: suggestions.iamtimcorey.com/

  • @lukevincent4397
    @lukevincent4397 หลายเดือนก่อน

    But the new Blazor WebApp can do all of this with mix and match as well. So who needs just a plain Webassembly?

    • @IAmTimCorey
      @IAmTimCorey  หลายเดือนก่อน +1

      Blazor Web App cannot run offline or be a PWA. Only a full Blazor WebAssembly app can do that.

  • @egulsever
    @egulsever หลายเดือนก่อน

    standalone is the old wasm

    • @IAmTimCorey
      @IAmTimCorey  หลายเดือนก่อน

      Blazor WebAssembly is WASM. I'm not sure what you are trying to say.

  • @JovenAlbarida
    @JovenAlbarida 5 หลายเดือนก่อน +3

    Valueable? But based on job post it has low demand as of now.. some SME are tired of Microsoft fast changing technology but with similar outcome.. Although I love this new Blazor thing, however it cannot give me additional money to provide food to table

    • @victorene3608
      @victorene3608 5 หลายเดือนก่อน

      Exactly... What's wrong with mvc core coupled with signalr?

    • @keyser456
      @keyser456 5 หลายเดือนก่อน

      @@victorene3608 It's not a SPA (and no PWA). Totally different paradigm.

    • @kristiadhy
      @kristiadhy 5 หลายเดือนก่อน +3

      That's right, I'm learning Blazor and have been trying to build up a medium sized project as my portfolio, but it's so hard to find work. I love Blazor, but I still have to put food on the table.

    • @IAmTimCorey
      @IAmTimCorey  5 หลายเดือนก่อน +5

      Couple things here. First, you have to remember that companies don't start working on their enterprise applications overnight. The vast majority of companies have enterprise applications that are five years old or older. That's just the nature of enterprise applications. That means that they were built before Blazor was a thing. That means that a very few companies even had the option of using Blazor for their enterprise application. Secondary systems, sure, but their primary systems are almost always older technologies that have not been upgraded. That means you will see a LOT more MVC or even WebForms. That's also why you still see so many jobs asking for .NET Framework developers.
      Second, remember that Blazor is a project type on top of the ASP.NET Core web framework. That means that jobs that are asking for ASP.NET Core developers could be using Blazor (or could be considering it). Basically, any job that uses .NET (not .NET Framework) could be using Blazor or is considering it. This also means that even if you aren't using Blazor, you are using the skills that you want to grow if you want to get into Blazor.

  • @ahmedadam6625
    @ahmedadam6625 5 หลายเดือนก่อน

    blazor , vue ,react ,angular or svelte for newcomer asp.net core developer?

    • @IAmTimCorey
      @IAmTimCorey  5 หลายเดือนก่อน +2

      Since you are new, I would highly recommend you start with Blazor since it will keep you learning C# and allow you to go deeper in the language rather than spreading you thin in multiple languages and frameworks.

    • @ahmedadam6625
      @ahmedadam6625 5 หลายเดือนก่อน

      you mean i start learning blazor,and after that i should learn js framework(vue,react,or angular)? or u mean blazor will be enough?