Loving Blazor. Just converted a little SPA I had done in Angular and was able to do it in about half the code. Much more readable and faster.
@TheCameltotem4 жыл бұрын
Yup same, converted a few react apps and it took me like 1/3 of the time. So easy as a c# dev.
@IAmTimCorey4 жыл бұрын
Awesome!
@cissemy3 жыл бұрын
What's the download size?
@RalfsBalodis3 жыл бұрын
0:00 - Intro 0:52 - Creating Blazor WebAssembly app 4:14 - Web app overview 7:25 - Blazor Server app quick overview 9:52 - Code overview: WebAssembly 27:30 - Code compare to Server app 36:35 - When to use Server or WebAssembly 47:37 - Summary and concluding remarks
@ee-ns2ww3 жыл бұрын
Stumbled on this video via google search looking for info on blazor. I was SO happy to find someone who explains things so clearly and simply how things work. Looking forward to viewing the rest of your videos on other topics. Regarding blazor web app, seems interesting but the eco system around it really needs to grow and I hope it will.
@IAmTimCorey3 жыл бұрын
Yep, it is still fairly new, but it is rapidly growing. It will be even better with .NET 6, which comes out in November 2021.
@80amnesia4 жыл бұрын
Just tried the Blazor Client webassembly... this is FU...ING revolutionary, mind blowing. My dev time for launching an app are going to be drastically reduced (stack: webapi + blazor client). 👌👍I've probably written just some lines of JS for some edge cased scenarios. Still love angular but this is on another level!
@IAmTimCorey4 жыл бұрын
I am glad you are going to get a lot of value out of it.
@Greatfulone3 жыл бұрын
Thank you for the reply Tim. Once I watch all the video I realized you did address my question.
@IAmTimCorey3 жыл бұрын
Great!
@zoltan.halasz4 жыл бұрын
Thank you, I am always looking forward to your content. I taught myself C# having your channel as a top resource.
@IAmTimCorey4 жыл бұрын
Awesome!
@ChrisG-qv3on2 жыл бұрын
Constantly blown away by how great your videos are, keep it up!
@IAmTimCorey2 жыл бұрын
Thank you!
@jimlynch83134 жыл бұрын
I don't know if its been said in the comments yet, but you can run both at the same time, just set one project to "Start without debugging" and the other to "Start". They should both run when you start a debug session then.
@IAmTimCorey4 жыл бұрын
Yeah, that was probably it. Thanks for sharing. I'll try that next time.
@Imgone251 Жыл бұрын
I've been following your WPF tutorials for work and they are super helpful! However, I love web development and I heard Blazor is a great technology to learn within the Microsoft ecosystem. Thank you for breaking down the difference between these two technologies, it can be a bit confusing to understand which one to use. I agree with you that Blazor server seems like a good default choice to start with if you're unsure of your use case. Looking forward to watching more of your video series!
@IAmTimCorey Жыл бұрын
I'm glad you enjoyed it.
@nickwienholt53133 жыл бұрын
This is an incredibly well presented and educationally excellent video - well done Tim
@IAmTimCorey3 жыл бұрын
Glad you enjoyed it!
@emmanuel28424 жыл бұрын
Just what the dotnet developers have been waiting for... Thumbs up for this intro
@IAmTimCorey4 жыл бұрын
Thank you!
@guyprovost4 жыл бұрын
Great to see the differences between the server and the local flavors of webassembly, but will there be a course on developing a project using Blazor WebAssembly ?
@IAmTimCorey4 жыл бұрын
Yes, there will be.
@peculiarpeculiar25043 жыл бұрын
seconded.
@efexzium2 жыл бұрын
@@IAmTimCorey Its hard to debug Blazor WASM can you please do a video?
@mememonster23703 жыл бұрын
i think this is the best channel for c# developers keep doing the great work.............
@IAmTimCorey3 жыл бұрын
Thanks!
@luismendez94364 жыл бұрын
Great explanation, specially the comparison and the differences between the two Blazor templates. Thanks!
@IAmTimCorey4 жыл бұрын
Glad it was helpful!
@gSys1337 Жыл бұрын
BaldAndBankrupt is doing Computer science videos? What a day to be alive !
@IAmTimCorey Жыл бұрын
Close, but no. I'm younger (barely) and taller. 😆
@andyhudsonsynthpop4 жыл бұрын
I really like Blazor server, and am intrigued about the options this opens up in case I have a requirement to do a SPA / PWA as obviously each has their own place. I don't really understand the hate for code rendered on the server, it really isn't limited to intranets and not every project needs the complexity that a framework like Angular, React or Vue introduces. Listening to some people out there you'd think that PWA was the only possible solution for public facing web applications, which I simply don't accept. How nice it is to hear TIm actually stating the obvious that the simplicity of server render code will suffice for a lot of people. Also nice to see the positive comments below about Blazor Client and the time savings compared to Angular, React or Vue which could be a deal breaker.
@IAmTimCorey4 жыл бұрын
I am glad you enjoyed it.
@torrvic115611 ай бұрын
Thanks for great introductory video, Mr. Corey! Can you kindly tell in which case (or cases) Api can be beneficial for Blazor Server? I can only imagine microservices case, where you’ll have to use BFF pattern with Api behind your frontend which will be used as a sort of router for your system from actual client to the services behind these gateway (or I call it router for some reason).
@subbareddy-nm1hz3 жыл бұрын
It’s a great Video.. thank you Soo much Tim .. looking forward to listen you more ..
@IAmTimCorey3 жыл бұрын
You are welcome.
@karinareynapupo18513 жыл бұрын
Great video! Thanks for the guidance Tim
@IAmTimCorey3 жыл бұрын
You are welcome.
@lemoncrazedcamel4 жыл бұрын
I’ve been waiting for you to do this for so long! Thank you!
@IAmTimCorey4 жыл бұрын
You are welcome.
@markharby1804 жыл бұрын
Nice video Tim, when you thinking of doing the PWA video, that could be a real game changer if the technology delivers.
@IAmTimCorey4 жыл бұрын
It is coming and it definitely adds a nice addition to the web development options.
@matthewberry2014 жыл бұрын
Really good video, thanks
@IAmTimCorey4 жыл бұрын
Glad you liked it!
@andywalter74264 жыл бұрын
I saw other blazor videos who said that aspnet core hosted is usually used when doing progressive web app. They said that doing as aspnet core hosted means its still a web assembly. However, its easier to connect to the server for database stuff. In that case, its still truly a web assembly but uses the server only for when having to communicate with web api for example.
@IAmTimCorey4 жыл бұрын
I can see people doing that because it feels easier. However, I have found that it actually is more difficult to maintain in the long run in my opinion. I prefer to have a completely separate API compared to trying to create a UI-specific backend project.
@andywalter74264 жыл бұрын
@@IAmTimCorey One question I have is if they are separate, then if somebody is doing a progressive web app and they close off, how do they run the progressive web app? Because I ran lots of tests and found that when its aspnet hosted and they run that local, then they can run the progressive web app for the first time. However, when separate, there is no exe so not sure how somebody can open the progressive app the first time.
@benjamininkorea70164 жыл бұрын
Subscribed with thumbs-up. Thank you for a very thorough explanation of the starting projects!
@IAmTimCorey4 жыл бұрын
Welcome aboard!
@NibblyPig4 жыл бұрын
When I make a new blazor webassembly app and don't check use core, it won't run. I get "Unable to run your project. the "RunCommand" property is not defined. ". It works if I check the use core button but that creates three projects.
@irpiggie4 жыл бұрын
Is it secure to send "semi-sensitive" data to the client from the server api controllers, like for example social security numbers? Does .NET automatically encrypt (via abstraction) the data gets requested by the client?
@IAmTimCorey4 жыл бұрын
You should be using HTTPS for your API so that should be secure. However, you should still limit sensitive data transmission whenever possible.
@TRay941004 жыл бұрын
S/O from Paris, crystal clear dynamic of explanation ! Thanks !
@IAmTimCorey4 жыл бұрын
You're very welcome!
@vijaybhanu40114 жыл бұрын
Great explanation and differences, could you please create a video on hosting and deployment of Blazer web assembly vs blazer server
@IAmTimCorey4 жыл бұрын
I will add it to the list. Thanks for the suggestion.
@Shinee3e4 жыл бұрын
Thank you Tim for the content, looking forward for more Blazor videos.
@IAmTimCorey4 жыл бұрын
Noted on my list. Thanks for the idea.
@sanjeevkumarchaudhary15114 жыл бұрын
Great explanation and differences, Could please create a video on Clean/Onion architecture using dapper, that will be great thanks in advance...
@IAmTimCorey4 жыл бұрын
I will add it to the list. Thanks for the suggestion.
@malikmartin4 жыл бұрын
9/18/2020 - was able to start both projects
@IAmTimCorey4 жыл бұрын
You can but you don’t need to.
@malikmartin4 жыл бұрын
@@IAmTimCorey Yeah , just though that i'd mention it :)
@andywalter74264 жыл бұрын
I actually found there was another case where blazor server side cannot be used. If a person is creating a game and there is a timer where it has to redraw a screen, in that case, i found out that web assembly has to be used even if only one person was using because if a timer calls the StateHasChanged, then nothing happens but when you do the same thing with web assembly, it worked. I am guessing it was because they designed the server side where it can't just use a timer then call statehaschanged. This means if they are creating like a browser game, most likely web assembly is the way to go in that case too.
@adds-kz3oc4 жыл бұрын
Blazor, and infact all SPA frameworks, is definitely not the platform you want to use to create browser games. Use Unity, it's C# and can be exported to WebAssembly browser.
@andywalter74264 жыл бұрын
@@adds-kz3oc How can unity use the local storage if it knows nothing about the browser stuff though. Because many games needs to save but the person can be offline though.
@IAmTimCorey4 жыл бұрын
Web-based games typically don't save locally but they can if you use Blazor WebAssembly. Just remember that this storage is volatile. It can be deleted without warning, by the user, by the browser, or by a clean-up application. You don't want to depend on it long-term.
@andywalter74264 жыл бұрын
@@IAmTimCorey What is the suggested way of saving something like a user name then? Because even if its saved to the cloud, obviously when the user first goes into the page, its not going to know who they are. I would think that web based games would save to local storage if its a long game and they want to autoresume. For that case, usually the user would probably come back to it the next day or something.
@seancpp4 жыл бұрын
@@andywalter7426 The server. A database. Not sure why it being a browser game changes that at all.
@hanahalouani Жыл бұрын
hey Tim, Great Video and made it easier to me to see the difference between both, I have a question does all info here still accurate now ? are there any updates on both ? thanks a lot
@IAmTimCorey Жыл бұрын
The differences still hold true today. There will be some changes in .NET 8 in November that will improve some of the problems and allow you to switch more easily, but the differences will still be the same.
@pylvr80214 жыл бұрын
Amazing thanks you Tim
@IAmTimCorey4 жыл бұрын
You are welcome.
@scwyldspirit4 жыл бұрын
Tim I am putting this on here just in case someone is using the same configuration as I am. I am running on a Mac with both Rider and Visual Studio installed. I have used both to create the same exact application, but here is what I have noticed. In Rider it fails to build the project and throws a nasty error, where as Visual Studio Builds the project like it is supposed to. I have reached out to Jetbrains to see what they can come up with as far as a solution. I did not try it with the EAP because it could introduce bugs that I don't want to mess with on the initial build
@IAmTimCorey4 жыл бұрын
That's the problem with a third-party IDE - they have to keep their environment constantly up to date compared to what Microsoft is releasing. It is a really tough job, and one I commend them for doing so well most of the time. Hopefully they get this straightened out.
@albxdotcom4 жыл бұрын
Nice work
@IAmTimCorey4 жыл бұрын
Thanks
@kshashank112 жыл бұрын
Hey Tim, Thank you so much for such informative video. I have one question, When we use Blazor WebAssembly since the dlls are cached by the browser so if we make any change in the client, does the new version of the dll gets replaced in the browser or the user has to manually hard reload the site again to get the latest dll ??
@IAmTimCorey2 жыл бұрын
The dll gets updated because it is a new version of the file. It will only pull from the cache if the file has not changed.
@JoeBonez4 жыл бұрын
What is your preference for the @code sections? In the .razor file, or in a separate .cs file?
@IAmTimCorey4 жыл бұрын
I start in code and then move them.
@MrMostafa2002m3 жыл бұрын
i think it is good idea to learn webassembly hosted application comes through a series from start to finish upon on a project to achieve by the end of this series whis is related by number jndexed ,, while this series you can say all your good points and tricks , that is an idea like to mentiom it here cause i feel you try to encourage us to offer what we need ... thabks
@tomthelestaff-iamtimcorey75973 жыл бұрын
Thanks for watching
@ReviewCantina4 жыл бұрын
Tim, as always great video/presentation.
@IAmTimCorey4 жыл бұрын
Glad you enjoyed it
@maximeumbra72352 жыл бұрын
Really like your content 9/10 videos or more and you've given me So much useful knowledge I'll have to look into compensation via patreon or the like. That said i felt this particular video was slightly difficult to follow, to me it jumped around a bit too rapidly.
@IAmTimCorey2 жыл бұрын
This is a comparison video rather than a straight “teach you about Blazor WebAssembly” video.
@maximeumbra72352 жыл бұрын
@@IAmTimCorey Should've perhaps paid a little more attention to the specific wording of the title :) Thanks for all your efforts!
@mahulkarpratik4 жыл бұрын
Thank you Tim for the video. I really appreciate your effort. I have a question on scalability side. If I want to containerise the app and spin up few instances of the container. Then how would the session for Signal R connectivity will be take care of. Thanks in advance.
@mikkokeranen62314 жыл бұрын
Good stuff
@IAmTimCorey4 жыл бұрын
Appreciate it
@maxchang20544 жыл бұрын
I got question out here: If i want to create a PWA on mobile device for my customer (shopping carts), but need to connect to Azure DB for merchandise info,which plateform should i choose? (it doesn't have to work offline,it just has to be fast)
@IAmTimCorey4 жыл бұрын
I would pair Blazor WebAssembly with ASP.NET Core API.
@maxchang20544 жыл бұрын
@@IAmTimCorey Thank you sir!!
@mjbarge4 жыл бұрын
Hi Tim, great video. Thank you so much. I was however left confused about exactly what gets downloaded from the server as your executable... Is it a compiled WASM file (a binary dll) or it is a .js file?. If it's a compiled dll in byte form then surely your code is safer from being copied than a normal C# developed .exe file in an app which can easily be refactored back to C#? If no C# gets downloaded then you are much better off. Ok, it can still be de-compiled but it would be much, much more difficult to interpret. Thanks again!
@IAmTimCorey4 жыл бұрын
A dll is part of it but it needs to be read by the WASM so it is basically a script-style file. You can read it and even debug the C# code right in the browser tools (like you can JavaScript). All client-side code is visible to the end user.
@mattzawislak4 жыл бұрын
Hey Tim, do you know if it is possible to setup a Blazor Server/Client such that the Blazor Server is used for the majority of the site, and the Blazor Client is used only in a few cases? The main purpose of this would be to avoid the large loading times for the client, except when absolutely necessary. Thanks, Matt Zawislak
@mbiwantarh56134 жыл бұрын
Good Morning. huge fan of the channel. I would like to ask, WHEN WILL YOU CONTINUE WITH THE TIMCO RETAIL MANAGER COURSE? or ARE YOU DONE WITH THAT COURSE?. I am very interested in seen how to implement the Asp.Net MVC web frontend of the application.
@sgtmajbelanger4 жыл бұрын
I'm still waiting for the unit testing section myself.
@IAmTimCorey4 жыл бұрын
It is coming. It is on a slight break. I am currently moving across the country, so I pre-recorded some videos that I had in the queue rather than trying to rush the TimCo videos. They should come back sometime in July.
@mbiwantarh56134 жыл бұрын
@@IAmTimCorey I am eagerly waiting for it
@appiahkusi80664 жыл бұрын
Good tutorial. Can one create a group chart e.g. Monthly Sales chart with Blazor server or Blazor WebAssembly?
@calvinz3603 жыл бұрын
What would the difference be by using the "ASP NET Hosting" option on WASM project creation ? Comparatively to creating individual WASM(Client), Server projects ?
@MacLeigh4 жыл бұрын
Hi Tim, I've recently started following you on YT and I am amazed how just after several videos my mindset regarding development is changed, for the better of course. I am about to start a new project, rather smaller one, and planned to do in WASM which I've never used before for production (just had one project with Blazer server), because I wanted this to be my first SPA+WebAPI project expecting that it would be faster UX and simpler to develop than Server. Now after watching this video I have second thoughts. In your opinion what should be better (easier) to develop/maintain, WASM or Server? My business logic is mostly in stored procedures and I would use EF6 (I'm not good with Core) and Dapper.
@IAmTimCorey4 жыл бұрын
Blazor Server is easier to maintain (WebAssembly needs an API), but it depends on your project needs.
@parko19654 жыл бұрын
Firstly great tutorial Tim, going on what you said regarding the differences between Server and WebAssembly I notice you run both in IISExpress, so in theory once the webassembly app has been downloaded to the browser and if the connection to IIS was then disconnected would the webassembly app continue functioning as normal?
@IAmTimCorey4 жыл бұрын
If the app were not running in development, correct. However, in development mode offline is disabled. The reason why is because otherwise it would make debugging a nightmare (you would need to launch the app, wait for it to pull the update, which is not a visible thing, and then restart the app - you would need to do this every time you make any change at all).
@spquest23862 жыл бұрын
Can we use blazor to build game? I want to make a Chess game and I want put it on the web so I can easily share with my friends. But I don't want to use JS. I like C# and I thought blazor would good option for it.
@stewarthyde51114 жыл бұрын
Interesting video Tim and thank you. I was curious about the ASP.Net Core Hosted part - how is it different from normal Webassembly and any connection with PWA. Personally has new to Web development (not C#), I found the ASP.Net Core Hosted part and easy way to get into actual API development. As being new to web development with modern frameworks and recently because of experimenting with ASP Razor pages - I found that Blazor (both versions) are the best way to learn.
@IAmTimCorey4 жыл бұрын
Adding in the Hosted solution makes creating a PWA messier, in my opinion. I'll be showing the difference in a future video.
@stewarthyde51114 жыл бұрын
@@IAmTimCorey Yes I would agree but does ASP.Net Core Hosted have different purpose. Experimenting with gave me better understanding of APIs on server.
@chammu69363 жыл бұрын
Thanks for the explanation. Recently i worked on one project, where Angular is used as the front end framework and springboot is backend. Now i moved to .NET projects .I understood that Blazor supports two hosting models, client side hosting model and server side hosting model. Now i am going to start .NET project with blazor. I have created REST API for the project.Now i have to use Blazor in that project.Here my doubt comes. 1)Blazor web assembly is for front end (or) back end ? 2)Blazor Server app is for front end (or) back end?
@IAmTimCorey3 жыл бұрын
You can do front-end and back-end work in Blazor Server, but it is ideal to create a class library for your back-end code and just do your user interface work in Blazor Server. Blazor WebAssembly needs an API for the business logic and data access (back-end) work since it is fully client-side.
@slikke4 жыл бұрын
Thank you Tim. Excellent contents, but how can we get more (probably a complete project) in this subject? Are you planning to make a course in Udemy?
@IAmTimCorey4 жыл бұрын
I am planning to create a start to finish course for my site (iamtimcorey.com).
@borismartinovic20744 жыл бұрын
If I publish my Blazor WebAssembly app and after some time decide to make design changes and publish my app again are those changes going to be visible to the previous clients? I’m a bit inexperienced so this question might sound stupid. By the way, thanks for amazing content and effort.
@IAmTimCorey4 жыл бұрын
Yes. In "regular" mode, the new updates will update your site like any "normal" website. If they are using the PWA feature (installing your site like an app), they will be a version behind. When the new changes are published, they will still load the old site one more time. Then in the background, the site will update itself and it will be ready for when it is next run.
@queenstownswords4 жыл бұрын
Good stuff Tim. I am looking forward to seeing more videos on blazor PWA.
@IAmTimCorey4 жыл бұрын
More to come!
@ajps2824 жыл бұрын
Hi Tim, is there a way to globally catch unhandled exceptions in a Blazor WebAssembly stand-alone app? My goal is to centralise handling of these exceptions instead of having to use try/catches. I’ve done some research but can’t really find an answer. Thanks very much in advance.
@IAmTimCorey4 жыл бұрын
Catch them where the application starts. Displaying them is an other issue, though.
@michalventura4 жыл бұрын
Hi Tim, so what about MVC as such, is it a history? I am a bit confused where MS is heading ...
@IAmTimCorey4 жыл бұрын
No, it isn’t history. We just have more options. Check out my Which ASP.NET Core course for more information.
@Sergetkint3 жыл бұрын
Funny, how did you knew i was watching this video :-) "You to, Serge" at 10m47 Grtz and thanks for these crystal clear video's Serge
@IAmTimCorey3 жыл бұрын
You are welcome.
@stevebolman65184 жыл бұрын
Question: are there issues or benefits of having a Blazor WA client in front of a Blazor Server. Second question is regarding running Blazor Client in an OfficeJS Add-in Taskpane?
@IAmTimCorey4 жыл бұрын
Blazor Server can't directly support Blazor WebAssembly. It isn't an API, which is what Blazor WebAssembly needs. As for your second question, I don't know.
@alexpena99274 жыл бұрын
thanks Tim
@IAmTimCorey4 жыл бұрын
You are welcome.
@swankyshivy3 жыл бұрын
how secure is webassembly if someone can download your code. is there something that can be done to like encrypt it or something? what about local storage can anything be done in terms of data security?
@IAmTimCorey3 жыл бұрын
That is the nature of the web. All JavaScript applications (Angular, React, Vue) are entirely downloaded to the client as well. When it comes to "security", it depends on what you mean. You cannot encrypt your code itself, no. You could technically try to encrypt the data that is downloaded, but that is fairly meaningless. That's why Blazor WebAssembly does not talk directly to the database but goes through an API (where there is security and encryption). You can encrypt the data in local storage, but it is only available to you and the website you got it from, so it isn't a big security risk.
@anantjaiswal32833 жыл бұрын
What would you suggest to use for single user admin panel. Web assembly or blazor server app
@IAmTimCorey3 жыл бұрын
It depends on the situation. If you have an existing API (like we do in the TimCo series), I would use Blazor WebAssembly for the offline capabilities. If you don't have an API, I would choose Blazor Server for the ease of development.
@anantjaiswal32833 жыл бұрын
@@IAmTimCorey Thanks for quick reply. I have started with web assembly with asp.net core hosting which creates client, server and domain project... Is there any way like lazy loading im web assembly so it will not load all the resources on first time load.
@ElCidPhysics904 жыл бұрын
Thanks for the in depth comparison bw BlazorServer and Blazor WebAssembly. I watched a video the other day suggesting Blazor is a means by which one can almost eliminate javascript from their code. Is this true???
@IAmTimCorey4 жыл бұрын
It depends on the situation. You can definitely do a lot of the same things with Blazor that you can with Angular, React, or Vue. Since it is all in C#, you will then have just one language to deal with (beyond HTML and CSS). That's the ideal picture. However, there is still a use for JavaScript. There are a LOT of great libraries out there for making your life better (pop-up windows, mapping, 3d drawing, page manipulation, etc.) You will still find these useful in your project but you don't HAVE to use them in order to get a great user experience. Now you get to choose if you want to add in JavaScript. Without Blazor, you are almost forced to use JavaScript if you want a good user experience. Now you can treat it as a bonus instead of a requirement.
@ElCidPhysics904 жыл бұрын
IAmTimCorey thank you.
@stewarthyde51114 жыл бұрын
Tim, It been a while since this video. I still curious on you feeling what the purpose of Blazer Webassemby Hosted Core option is? Also curious in general, should the the NavMenu provided by Blazor be used.
@IAmTimCorey4 жыл бұрын
The hosted option is a shortcut to creating an API. I personally prefer not to use it. As for the NavMenu, you can use it if it works for you or you can replace it or modify it.
@stewarthyde51114 жыл бұрын
@@IAmTimCorey That is pretty much what I thought. I guess NavMenu depends on Application layout - it also depends on lot on the menu.
@gibinfrancis3 жыл бұрын
Is it possible to add Razor pages inside blazor webassembly ?
@IAmTimCorey3 жыл бұрын
Blazor WebAssembly is a bit different. It is completely client-side rendered so you can use Razor syntax but you cannot add a Razor page to the project.
@gibinfrancis3 жыл бұрын
@@IAmTimCorey thank you very much. 😀
@davidbacter54244 жыл бұрын
Can you Please talk about covariance contravariance and invariance? Out and in? Thank you!
@IAmTimCorey4 жыл бұрын
I will add it to the list. Thanks for the suggestion.
@hiphopheaven4 жыл бұрын
The confusing part is the Core hosted option for Blazor Client Side
@IAmTimCorey4 жыл бұрын
I'll be covering that more in-depth in the coming weeks. Basically, think of it as an API project that was already set up for you to work with your Blazor WebAssembly project.
@johnniegilkerson47244 жыл бұрын
@15:14 in video, how did you get the dev tools window to full screen?
@IAmTimCorey4 жыл бұрын
In this case, they aren't truly full screen. I just dragged the frame up to cover most of the browser window. You can also pop out the developer tools so they can be full screen.
@ibrahimhussain32484 жыл бұрын
looking forward to that PWA demo
@IAmTimCorey4 жыл бұрын
The first one will be an explanation of basic PWA. After that, I'll be showing how to use a PWA more thoroughly.
@michca1234 жыл бұрын
Any chance you could make a video on how to apply ITIL-BM to a project? And how to make a contract? I've been studying programming for 2 years, and i still have no clue on how to approach a potential client.
@IAmTimCorey4 жыл бұрын
Probably not. That's a little too far outside the scope of this channel. Sorry.
@TheGothGaming3 жыл бұрын
im legit thinking MS is become cool again. and very pro consumer too!
@IAmTimCorey3 жыл бұрын
That is good news.
@whourdadie3 жыл бұрын
Can you do a Blazor video using the ASP.NET Core hosted option? I know you said it makes it almost totally like a Blazor Server application, but my little bit of testing seems to pull the client side into the server application and from the browser it seems to work with the client piece more than the server piece. It seems to just give you that separation of your server data along with the client app for the webassembly part. Maybe I'm wrong, but would love to see your interpretation and a sample how you would work with it if using the ASP.NET Core hosted option. Love your videos BTW.
@IAmTimCorey3 жыл бұрын
Yep, I can do that. I've got it on the suggestion list.
@hassanesilverlight15504 жыл бұрын
Hi Tim, I tried Webassembly hosted application but I do get some problems. Main one is it seems it slower than just Blazor server .
@IAmTimCorey4 жыл бұрын
Comparing the two Blazors is like comparing apples and oranges. Blazor Server is pre-compiled, server-side code. Blazor WebAssembly is interpreted code that runs on the client. There will be a speed difference. If speed is the only consideration, definitely choose Blazor Server (up to a point - after so many concurrent connections, Blazor WebAssembly will pull ahead). Usually you should default to Blazor Server if you are choosing between the two. The only reason to choose Blazor WebAssembly is if you want some of the unique items it can offer (PWA, scalability, true client-side, offline support, etc.)
@sunnyokoro4 жыл бұрын
hello Tim, thanks for this video. Please can you also do a series on Mobile Development using Flutter?
@IAmTimCorey4 жыл бұрын
I won't be covering Flutter. This channel is dedicated to C# and C#-related technologies.
@sunnyokoro4 жыл бұрын
@@IAmTimCorey okay, that's fine. Keep up the good work.
@dreddy51872 жыл бұрын
I can use an API with Blazor Server correct?
@IAmTimCorey2 жыл бұрын
Absolutely. I've got a course coming out on APIs that actually demonstrates that specific topic. We build a Blazor Server project to consume an API that has security on it.
@dreddy51872 жыл бұрын
@@IAmTimCorey awesome, thanks! At my company our sites have 3 layers between them. The web site server, the app server, and the database server. Each app will rest on the corresponding server so wanted to make sure the web server could have the Blazor Server app, the App server will host the API and then the database rests on the data server. You're the best teacher I've seen on KZbin. My colleagues and I are amazed at the amount of people we interview that can code but have no concept of what well written code is and how to test and or debug.
@AyanMullick4 жыл бұрын
Can the code be written in PowerShell too, like in PowerShell universal dashboard?
@IAmTimCorey4 жыл бұрын
I'm not sure what you mean by writing the code in PowerShell. PS can be used as the command shell to run dotnet commands to create projects, yes, but Blazor WebAssembly is a C# application. It isn't something that can be written in PowerShell instead of C#, if that is what you are asking.
@AyanMullick4 жыл бұрын
@@IAmTimCorey , I meant writing the webpage in PowerShell like below. Demo: demo.ironmansoftware.com/PowerShell-Universal Code: github.com/ironmansoftware/poshud.com/blob/main/Repository/Dashboard.ps1 Homepage: ironmansoftware.com/powershell-universal-dashboard/ Thanks for clarifying.
@ogiel55014 жыл бұрын
Hey is there comming a video with blazorwasm "-- hosted" how that is built together? Because it's making a client side project and a server side project and it works together somehow. Btw thanks for the videos you are the best
@IAmTimCorey4 жыл бұрын
Probably. I haven't decided for sure yet.
@ogiel55014 жыл бұрын
@@IAmTimCorey Ahh cool, just figured out it's just an api on top of it but then you can do some cool stuff with signalr like the docs did. Not sure if that's possible with an seperate asp.net core webapi, anyway thanks!
@carlosjosejimenezbermudez92554 жыл бұрын
The webassembly debugging experience is lacking, but the framework is awesome.
@IAmTimCorey4 жыл бұрын
Yep, but it is getting there.
@totomustopalamin62334 жыл бұрын
when you discuss about microservices on dotnet??
@IAmTimCorey4 жыл бұрын
It is on my list to cover. It doesn't have a date yet.
@totomustopalamin62334 жыл бұрын
thank for your reply sir, i hope it can be release soon, thanks
@kourosh2344 жыл бұрын
Would you make tutorial on doing Steve Sandersons demo apps?
@IAmTimCorey4 жыл бұрын
Check out my course announcement video ( kzbin.info/www/bejne/nnrQhmWufL-Sq7M ). That course uses a Steve Sanderson demo app to learn from.
@munibhardwaj4 жыл бұрын
Looking forward to PWA..!!!
@IAmTimCorey4 жыл бұрын
It is a fun feature.
@edsonhenrique87614 жыл бұрын
Can I mix both in the same page, like, some parts of the page use SSR and other use CSR?
@IAmTimCorey4 жыл бұрын
No, you can't mix client-side and server-side Blazor in the same project.
@carlosjosejimenezbermudez92554 жыл бұрын
This might help you if what you're looking for is for better SEO. chrissainty.com/prerendering-a-client-side-blazor-application/
@wimkuijpers13424 жыл бұрын
The Authentication / Authorisation stuff is still not clear for me. How do I connect to my already excisting table with users?
@IAmTimCorey4 жыл бұрын
I didn't cover authentication with Blazor WebAssembly. I will in the future. You can't just connect to your Identity DB like you can with Blazor Server.
@wimkuijpers13424 жыл бұрын
I would be happy with an explanation of how to contact my user table via Blazor Server.
@carlosjosejimenezbermudez92554 жыл бұрын
To understand this you need the basics of what a JWT is, what claims are and how they can be used for authorization policies.
@pedroferreira92344 жыл бұрын
Hi Tim, do you know how to activate Hot Reload in WebAssembly? thx
@IAmTimCorey4 жыл бұрын
Nope. I don't think it is in place yet.
@odumahojorma3 жыл бұрын
I've used both now and I'll recommend blazor wasm any day, why? each time your network drops that silly white overlay makes your ui useless. i will only ever use blazor server again if i intend to embed in a desktop app with electron or something. Blazor server would have been perfect if it behaved like typical mvc or razor pages website. The component ui based approach is excellent.
@IAmTimCorey3 жыл бұрын
The reconnect story gets a lot better with .NET 6.
@odumahojorma3 жыл бұрын
@@IAmTimCorey A video about such will be great. Thank you in advance 😉
@efexzium2 жыл бұрын
Its hard to debug Blazor WASM can you please do a video?
@IAmTimCorey2 жыл бұрын
I will add it to the list. Thanks for the suggestion.
@chammu69363 жыл бұрын
If Blazor web assembly fully runs on the client , if i make any Web API request then how it will communicate with server?
@guilhermemolin3 жыл бұрын
Blazor web assembly is frontend only, you must ha e a server running rest services and then call in blazor with HttpClient for example
@chammu69363 жыл бұрын
@@guilhermemolin Thanks. Blazor server also front end right? But Blazor web assembly runs on the client side browser and blazor server runs on the server.Am i correct? Please correct me if i'm wrong.
@IAmTimCorey3 жыл бұрын
@CoCo - Blazor Server runs on the server but it also acts like a client-side application. Your C# code never goes to the client (unlike a true client-side application like Blazor WebAssembly) but you get the same rich interactivity using SignalR. Both are front-ends, yes, although I think what Guilherme meant was client-side front-end.
@chammu69363 жыл бұрын
@@IAmTimCorey Thanks .I have got an idea.
@MouthBout4 жыл бұрын
3:14 I'd love to see you do a tutorial on token-based authentication and CRUD with WebAssembly in the manner you'd do it, without ASP.NET Core hosted. Register Account (create), Account Profile (read), Edit Account (update), and Close Account (delete).
@IAmTimCorey4 жыл бұрын
I will add it to the list. Thanks for the suggestion.
@brianpk72063 жыл бұрын
As a student soon to break into the industry, what should I invest my time into learning? Blazer or .NET Core MVC? Or more specifically blazer web assembly, blazer server side, or .NET Core MVC? I want to learn what most jobs use so I have more job opportunities. Also does blazer not use MVC? I heard MVC is very commonly used. Great video btw :D
@juleswombat53094 жыл бұрын
Looks interesting, but the really sad part is I was doing a lot more compelling WEB UI C# in the client ten year ago with Silverlight. Why should I trust Microsoft on this.
@IAmTimCorey4 жыл бұрын
Because Silverlight was dependent on a browser plug-in from Microsoft. Browsers had to allow it and allow it access to browser resources. That was a constant war. With Blazor WebAssembly, Microsoft is creating something on top of the industry-standard product (WebAssembly - that isn't a Microsoft thing, it is a web standard that everyone supports). There is no fight to keep this supported. It is being supported by the entire community. Plus, Blazor WebAssembly is open source, so even if Microsoft decided to stop developing it, the community could continue it if they wanted to.
@HtS643KyS6555GxQ3edA4 жыл бұрын
I want to put this UI inside a child window (given a parent HWND). Could that be done?
@IAmTimCorey4 жыл бұрын
Not natively that I know of but you can probably get it to work.
@phizc4 жыл бұрын
It's been ages since you posted, but if you're still wondering. I'm pretty sure you would need to host a web browser in the child window. WebView2 is probably the simplest.
@YumanoidPontifex3 жыл бұрын
so even with blazor webassembly i won't be able to completely avoid javascript? :/
@tomthelestaff-iamtimcorey75973 жыл бұрын
The pesky stuff just gets everywhere!
@YumanoidPontifex3 жыл бұрын
@@tomthelestaff-iamtimcorey7597 i'm looking into blazor exactly because i have exactly zero intention to learn any JS, so this is a bit disappointing :)
@tomthelestaff-iamtimcorey75973 жыл бұрын
@@YumanoidPontifex I get it.
@IAmTimCorey3 жыл бұрын
You don't have to use JavaScript unless you want to. You can do all of the line of business tasks you need with just C#. It is only if you want to add additional functionality not already in Blazor that you need to dip into JavaScript.
@YumanoidPontifex3 жыл бұрын
@@IAmTimCorey i'm an F#pist, a rare type who kinda skipped all the OO development stage, though i could muster enough C# to handle a blazor project. i'm also looking into SAFE stack / Bolero / model-view-update.
@windowsbuilderthegreat31213 жыл бұрын
Intro 0:52
@tomthelestaff-iamtimcorey75973 жыл бұрын
Thanks, but if you could break the entire video down by chapters, that would really add value for future viewers.
@srieger694 жыл бұрын
Hi Tim, Great video as always. I left you a message on your website. Looking for some consulting opportunities. Hope to hear back from you soon.
@IAmTimCorey4 жыл бұрын
I got it, I'm just backed up a bit right now (I'm moving). I should get to you soon.
@VishalDesai7114 жыл бұрын
Any work around to IE browser?
@IAmTimCorey4 жыл бұрын
Not good ones. Especially if you want to go back before IE 11. I know a lot of people are still using IE but encourage them to use Edge (or Firefox or Chrome).
@VishalDesai7114 жыл бұрын
@@IAmTimCorey we can still use Blazor server side so IE will also work correct?
@MarkoMijuskovic4 жыл бұрын
Has anyone figured out how to integrate client side - web assembly Blazor into an existing .NET MVC project? I'm sure I'm not the only one here who works on old legacy apps and I was able to easily integrate server side Blazor into my MVC project but client side is a different story. I find it hard to believe that this will only be usable if your starting a SPA project from scratch.
@IAmTimCorey4 жыл бұрын
It depends on how you want to integrate it. MVC can act like an API. If you use it that way, it is simple to integrate Blazor WebAssembly - you use the MVC project as your data source.
@MarkoMijuskovic4 жыл бұрын
@@IAmTimCorey No that's not what I mean. I just want to use it sporadically on some pages in my, otherwise, regular MVC app. For example let's say I want to make a wizard like interface where form elements appear based on previous user selection - form elements show up or dissapear based on my choices as a user. That kind of interface is complex and currently I use something like Vue.js to accomplish this task. I can also do this with server side Blazor because it's easy to integrate and use in an app. But I failed to figure out how to do this with client side - web assembly Blazor. Seems like it's intended for SPA apps only which sucks because it's advertized as a replacement for javascript mess.
@StarsManny4 жыл бұрын
At 3:00 why does it say "Linux" on the right?
@IAmTimCorey4 жыл бұрын
Because you can deploy it to a Docker container that is running Linux (or Windows).
@StarsManny4 жыл бұрын
@@IAmTimCorey thanks! Good to know it's not just me, I installed 2019 today and I thought I'd messed up the install options.
@chenguangli78313 жыл бұрын
All client side code is just about display... I wish it is true...