Blazor Course - Build an e-Commerce Web App with Clean Architecture | ASP.NET Core Blazor Tutorial

🎁ALL-ACCESS Subscription: Unlock access to all of my courses, both now and in the future at a low $19.99 / month.
frankliucs.com/all-access
💎Learn .NET MAUI while creating a Contacts App in .NET 7:
frankliucs.com/maui
🔥Learn Blazor while creating an Inventory Management System in .NET 6
frankliucs.com/blazor-ims
💎 Complete Guide to ASP.NET Core Identity
frankliucs.com/identity
💎Complete Blazor Course: Build an e-commerce app with ASP.NET Blazor and Clean Architecture
frankliucs.com/blazor-course
💎 Complete Web API Course:
frankliucs.com/webapi-course
👍Architecture Course
frankliucs.com/architecture-c...
🔌 Connect with me: frankliucs.com/
🏅 Support me on Patreon: / frankliucs
☕ Support me on Buy me a Coffee: www.buymeacoffee.com/frankliucs

Пікірлер: 99

  • @brandonwaagan2096
    @brandonwaagan20963 жыл бұрын

    I really enjoy your detailed explanations and presentations. With such good clarity and crystal clear explanations. I look forward to watching you closely moving forward

  • @FrankLiuSoftware

    @FrankLiuSoftware

    3 жыл бұрын

    I am so happy that the videos are helpful. Happy New Year!

  • @rossthemusicandguitarteacher
    @rossthemusicandguitarteacher3 жыл бұрын

    This was a great course, just finished it. I love any course that teaches clean architecture.

  • @FrankLiuSoftware

    @FrankLiuSoftware

    3 жыл бұрын

    Thank you Ross!

  • @rossthemusicandguitarteacher

    @rossthemusicandguitarteacher

    3 жыл бұрын

    @@FrankLiuSoftware No, thank YOU! I am beyond happy to finally fully grasp clean architecture. I read the book, and it clicked a little. Then took some classes that didn't use it, and it threw me off. Your class fully fleshed it out, just great!

  • @FrankLiuSoftware

    @FrankLiuSoftware

    3 жыл бұрын

    @@rossthemusicandguitarteacher So happy that it helped you!

  • @hokutoueda6215
    @hokutoueda62153 жыл бұрын

    Thank you very much Frank! You are the Master of Programming Tutorials and Enrichment. Really love your step by step lessons. I am able to grasp all of the basic concepts. Your videos are an invaluable resource for us all. Keep them coming!!!

  • @FrankLiuSoftware

    @FrankLiuSoftware

    3 жыл бұрын

    Thanks so much for the good words! That means a lot to me! Happy New Year!

  • @coldwire3684
    @coldwire36843 жыл бұрын

    Posting the first sections on YT was genius! I bought your udemy course! Nice content!

  • @FrankLiuSoftware

    @FrankLiuSoftware

    3 жыл бұрын

    Thank you coldWire!

  • @FrankLiuSoftware
    @FrankLiuSoftware3 жыл бұрын

    💎My New Blazor Course: Build an e-commerce app with ASP.NET Blazor and Clean Architecture kzread.info/dash/bejne/dWysq6eYY6yderQ.html Around lesson 3 and lesson 4, some parts' sound quality was messed up due to video combining process. Unfortunately, on KZread, once a video is uploaded, I cannot modify it anymore. You can go to my course link above to watch them as free preview.

  • @RickTheClipper
    @RickTheClipper3 жыл бұрын

    Very good introduction, but I urgently suggest You adjust Your audio levels, those permanent changes are disturbing

  • @ArushaAscendExpeditions
    @ArushaAscendExpeditions Жыл бұрын

    I just love it, Thank you man

  • @JesseIngles
    @JesseIngles Жыл бұрын

    Thank you soo much

  • @guycamu8873
    @guycamu88733 жыл бұрын

    Thank you for your easy to understand tutorial

  • @FrankLiuSoftware

    @FrankLiuSoftware

    3 жыл бұрын

    You are very welcome! I am happy it helps.

  • @emreaka3965
    @emreaka39652 жыл бұрын

    Thank you ^^

  • @anyelovinzen514
    @anyelovinzen5143 жыл бұрын

    Thanks for sharing your knowledge.

  • @FrankLiuSoftware

    @FrankLiuSoftware

    3 жыл бұрын

    You are welcome!

  • @anthony9932
    @anthony99323 жыл бұрын

    thank you sir.. now i have better understanding in of what uncle bob says thumbs upp :)

  • @FrankLiuSoftware

    @FrankLiuSoftware

    3 жыл бұрын

    My pleasure!

  • @timmylol6
    @timmylol63 жыл бұрын

    Wauw, been self-learning C# since the following four months. So far, I haven't heared anything about Middleware and how the process actually works. The first 6 minutes alone are enough for me to give this a thumbs up and a subscribe, thanks for the help!

  • @FrankLiuSoftware

    @FrankLiuSoftware

    3 жыл бұрын

    Hope the rest of course is also helpful to you. Enjoy!

  • @timmylol6

    @timmylol6

    3 жыл бұрын

    @@FrankLiuSoftware I am following this along with a view breaks in the mean time. However, I can already say that you take a different perspective on explaining how to make an web app in general. For example, again in 24:00 and in 26:00 this helps to get a better understanding of the purpose of using components:)

  • @FrankLiuSoftware

    @FrankLiuSoftware

    3 жыл бұрын

    Thank you Tim! Your words are very encouraging. As someone who have just started teaching online, your feedback is very encouraging!

  • @timmylol6

    @timmylol6

    3 жыл бұрын

    @@FrankLiuSoftware It's the least I can do, soon your channel will explode:D Specially if you keep your microfone a bit more syncronized than everything is as neat as it can be:)

  • @timmylol6

    @timmylol6

    3 жыл бұрын

    @@FrankLiuSoftware I am now at 42:00. I can't find the productlist that you see where to be found on github. Can you perhaps share that?

  • @flaviusioan69
    @flaviusioan693 жыл бұрын

    Great tutorial

  • @FrankLiuSoftware

    @FrankLiuSoftware

    3 жыл бұрын

    Thank you Ioan!

  • @philippelhaus
    @philippelhaus3 жыл бұрын

    Good stuff 👍

  • @FrankLiuSoftware

    @FrankLiuSoftware

    3 жыл бұрын

    Glad that you enjoy it.

  • @volkov1536
    @volkov15362 жыл бұрын

    Great tutorial! Is there any master detail blazor content especially multiple edit on details?

  • @michaelestrinone2111
    @michaelestrinone21113 жыл бұрын

    Frank, I am to the point where I am not really comfortable to continue consuming your channel videos without being able to pay back, even nominally. Usual stuff, like "Patreon" or "Cup of coffee" etc will be really nice. Please enable your channel to accept payments of some sort, that will lessen the guilt factor. Thank you for practical experience you share with us!

  • @FrankLiuSoftware

    @FrankLiuSoftware

    3 жыл бұрын

    Thank you Michael! That is very kind of you! I thought I might do the a cup of coffee thing after I have more subscribers. But maybe I can start a little early. I guess it doesn't hurt.

  • @Fkn1405

    @Fkn1405

    3 жыл бұрын

    @@FrankLiuSoftware , Seems like Frank has got interesting content... I'm subscribing

  • @FrankLiuSoftware

    @FrankLiuSoftware

    3 жыл бұрын

    Thank you @FKN XIV

  • @guyincognito1985

    @guyincognito1985

    3 жыл бұрын

    You can get the Udemy course for $10 to $11 for the next 2 days. (Or if you read this comment later on, Udemy always has one sale or another if you wait long enough).

  • @FrankLiuSoftware

    @FrankLiuSoftware

    3 жыл бұрын

    Hi Michael, I setup a Buy me a coffee page here: www.buymeacoffee.com/frankliucs. Hope this will make you feel better.

  • @mognomoinak1309
    @mognomoinak13093 жыл бұрын

    Pure Gold

  • @FrankLiuSoftware

    @FrankLiuSoftware

    3 жыл бұрын

    Glad that you enjoyed it.

  • @mognomoinak1309

    @mognomoinak1309

    3 жыл бұрын

    @@FrankLiuSoftware do you suggest any book to read for learning advanced design patterns for asp.net core.

  • @FrankLiuSoftware

    @FrankLiuSoftware

    3 жыл бұрын

    Mogno, there isn't any books that I like very much. Martin Fowler's Design Patterns for Enterprise Applications is a bit out dated. Maybe look into vertical slice on KZread.

  • @guyincognito1985
    @guyincognito19853 жыл бұрын

    Purchased on Udemy and subscribed. What font are you using in the VS IDE for editing your C# files?

  • @FrankLiuSoftware

    @FrankLiuSoftware

    3 жыл бұрын

    I am using Gonsolas. Thank you Guy! Let me know if you also see continuity errors like Alex pointed out.

  • @DJone4one
    @DJone4one2 жыл бұрын

    Furthermore, if I understood you correctly, you specified the zero as a return value in the one method. I was told that is bad. An exception would be better, so that you could continue working with the value.

  • @vinothdharmaraj7510
    @vinothdharmaraj75103 жыл бұрын

    Why don't you list out the categories in left sidenav and search by Category link? Please...

  • @nelsongomez8547
    @nelsongomez85472 жыл бұрын

    Hello Frank, How to convert this example from Blazor Server to Blazor WebAssembly, Is possible? Do you have a video?

  • @FrankLiuSoftware

    @FrankLiuSoftware

    2 жыл бұрын

    I don't have a video for this particular one. But to convert, you will need to wrap the use cases with web api end points. Then call the web APIs from blazor webassembly

  • @torrvic1156
    @torrvic115610 ай бұрын

    Thank you sir! I learned about Bootstrap and about search filtering functionality from you. But frankly your example doesn’t have a lot of relation to Clean Architecture (for example UI should not have dependencies on everything but only to Infrastructure) and it is a shame that you don’t have a database here.

  • @FrankLiuSoftware

    @FrankLiuSoftware

    10 ай бұрын

    This is just part of the course. The complete course has a database.

  • @stinefelt
    @stinefelt3 жыл бұрын

    I've landed on an issue with the Search Button CallBack, during debug I can see the filter var is being passed. However when it checks the condition if the products !=null && products.Count() > 0, it seems to never hit the else statement when searching the list.

  • @FrankLiuSoftware

    @FrankLiuSoftware

    3 жыл бұрын

    Did you use curly brackets? They are required by Razor syntax, although in normal c#, you don't need curly brackets if there is only one line of code in it.

  • @stinefelt

    @stinefelt

    3 жыл бұрын

    Frank Liu I missed the syntax on one. Thanks

  • @nelsongomez8547
    @nelsongomez85472 жыл бұрын

    Hello Frank congrats for your video, it's amazing. Frank I have a doubt. In this video, you use a blazor server directly and you Injects Interfaces. If I have two projects, for example, Blazor App, Xamarin App. I have that create a .net core web api with its methods, and both projects can connect to same api? I hope you understand me. Please I need orientation Sorry for my english, i'm learning. Regards.

  • @FrankLiuSoftware

    @FrankLiuSoftware

    2 жыл бұрын

    Yes, both can connect to the same web API. That is obvious, which makes me think you are not asking that. If I didn't answer your question, please clarify what you actually want to ask.

  • @nelsongomez8547

    @nelsongomez8547

    2 жыл бұрын

    @@FrankLiuSoftware hello frank, thank for your reply. My question is: If you want to build a Web app in Blazor and another one in xamarin. In the same project, would you leave Blazor server project behind and would you build a Web api to connect both of them (Blazor Assembly and Xamarin)?

  • @nelsongomez8547

    @nelsongomez8547

    2 жыл бұрын

    Do you understan me now?

  • @siamakut
    @siamakut2 жыл бұрын

    I am living in iran and i cant pay becouse of U. S. A sancations,,,, what am I supposed to do? Can I use the source code in a free manner?

  • @FrankLiuSoftware

    @FrankLiuSoftware

    2 жыл бұрын

    Udemy should support other methods of payment.

  • @vesnx
    @vesnx2 жыл бұрын

    why do you stop at the product details, you call it Build an e-Commerce Web App but you leave ou the e-comerse part...

  • @aliismail3162
    @aliismail31623 жыл бұрын

    Hi @Frank, How to set @typeparam TItem default type in the razor component. (want to optional to pass TItem parameter in a component when it is used in other components. For instance, as well as ) both should be right ...(Related Templated Components ) !! I am waiting for your quick response....!!!

  • @MizanurRahman-kn1gs
    @MizanurRahman-kn1gs3 жыл бұрын

    i am not clear why we used those class library and many interfaces would anybody please describe or help me to understand those purposes

  • @FrankLiuSoftware

    @FrankLiuSoftware

    3 жыл бұрын

    Hi KL, these are big topics. Long story short, class libraries are for grouping different concerns into to different layers. One library represents one layer most of the time, so that when you look at one class lib, you are certain that everything under it is for one purpose. That helps with maintainability and other beneifts. Interfaces are there for a class or an entire class lib to tell what it does or what it expects. Start using them, and after some time, you will get the hang of them.

  • @MizanurRahman-kn1gs

    @MizanurRahman-kn1gs

    3 жыл бұрын

    @@FrankLiuSoftwareThank you Frank , I want to understand those clearly .......

  • @Beji-boy
    @Beji-boy3 жыл бұрын

    Hi I wanna ask, if I wanna create PWA app with ASP.NET its better choice Blazor or MVC ? Thanks for answer

  • @FrankLiuSoftware

    @FrankLiuSoftware

    3 жыл бұрын

    I would say Blazor WebAssembly since a PWA app is typically a SPA .

  • @Beji-boy

    @Beji-boy

    3 жыл бұрын

    @@FrankLiuSoftware I want to ask if I want to create employee attendance is it hard with Blazor or better MVC? I work for school and I don't know exactly what to use. I decide what I want the application to be PWA. And it tells me how hard it is to create attendance in Blazor.

  • @FrankLiuSoftware

    @FrankLiuSoftware

    3 жыл бұрын

    @@Beji-boy it would easier with Blazor. With MVC, you will inevitably need to use JavaScript. With Blazor, you only need to deal with one stack.

  • @Beji-boy

    @Beji-boy

    3 жыл бұрын

    @@FrankLiuSoftware I want to ask when I create an application. So there I have the option to check "ASP .NET Core hosted" when creating and I will create 3 projects - Server, Client and Shared. Should I tick it? Otherwise, I bought a course for Udemy. And I want to ask, in addition, is it possible to ask you for some advice via skype or some other communication application if you do not mind? Thank you for answer

  • @dotnetdevni
    @dotnetdevni3 жыл бұрын

    Why are u doing the repositry pattern when ef core supports this just a question not a fault.

  • @FrankLiuSoftware

    @FrankLiuSoftware

    3 жыл бұрын

    No problem. First of all, I didn't use ef core in this course. Secondly it is always good to have a place where you group data operations instead of relying on a particular provider. That is just my opinion.

  • @SuperStarZinMinnLaht
    @SuperStarZinMinnLaht3 жыл бұрын

    where is the next section sir ?

  • @FrankLiuSoftware

    @FrankLiuSoftware

    3 жыл бұрын

    Hi Zin, the next sections are in the description area. Please follow the link, they are not free though. Thanks for following the course.

  • @ME-dg5np
    @ME-dg5np3 жыл бұрын

    U miss the more imporant rule on e-commerce... Security 🤸🙄 all remaining Is good

  • @FrankLiuSoftware

    @FrankLiuSoftware

    3 жыл бұрын

    My full course does have security. Or are you talking about something else. Let me know, maybe I can add to the course later. Thanks!

  • @youtub3ian728

    @youtub3ian728

    3 жыл бұрын

    @@FrankLiuSoftware When are you going to add the full course ? It's very interesting you're doing a great job.

  • @MattisDeveloper
    @MattisDeveloper3 жыл бұрын

    anyone got that github link? need the data :)

  • @FrankLiuSoftware

    @FrankLiuSoftware

    3 жыл бұрын

    I will get you the data. Give me some time.

  • @FrankLiuSoftware

    @FrankLiuSoftware

    3 жыл бұрын

    Here you go: github.com/frank-liu-toronto/free-blazor-course

  • @theoboldalex
    @theoboldalex3 жыл бұрын

    There are lots of continuity errors in this that makes it nigh on impossible to follow.

  • @guyincognito1985

    @guyincognito1985

    3 жыл бұрын

    Is that because it's a condensed version of the full 7.5 hour tutorial that's available on Udemy now? I don't know... I just purchased that for $10+tax, and I'm going to watch that instead of this condensed version. I could be wrong though?

  • @FrankLiuSoftware

    @FrankLiuSoftware

    3 жыл бұрын

    Around lesson 3 and lesson 4 there are some sound quality was messed up due to video combining process. Unfortunately, on KZread, once a video is uploaded, I cannot modify it anymore. If you found it distracting and hard to follow, please go to the Udemy course, the entire first section is set as free preview. So you can watch it there and then come back for the second section here on KZread.

  • @Nickelony
    @Nickelony Жыл бұрын

    Loved this tutorial, but I also wonder if it wouldn't be easier to just inject the `ProductRepository` class into each component and code the functionality there instead of making a new class for each use case? The amount of .cs files created with this approach seems a bit overkill. Also, how about creating a `ProductService` class instead, where all methods related to Products are in one place and that service is injected where needed? I'm still learning the SOLID principles, so my opinion might just be completely wrong.

  • @FrankLiuSoftware

    @FrankLiuSoftware

    Жыл бұрын

    Making logic stay in ui components is not good. For example, when you migrate to newer technology, you have to recode all your logic.

  • @allthecommonsense
    @allthecommonsense2 жыл бұрын

    Does anyone else find it humorous that he lists an affiliate link to his MICROPHONES? lol The audio quality of his lectures receive constant negative feedback.

  • @FrankLiuSoftware

    @FrankLiuSoftware

    2 жыл бұрын

    Lol, it is funny. But that video is an old one.

  • @daedwill
    @daedwill Жыл бұрын

    This is not clean architecture at all. Clean architecture has Domain, Application, Infrastructure and Presentation layers.

  • @FrankLiuSoftware

    @FrankLiuSoftware

    Жыл бұрын

    This is the same and I just call them differently. Domain = Core Business, Application = Use Cases, Infrastructure = Plugins and Presentation = UI. I like my naming which is inline with Robert Martin's definition.

  • @torrvic1156

    @torrvic1156

    10 ай бұрын

    @@FrankLiuSoftwareUI should not depend on everything like in your example. Imo this goes against the principles of the Clean Architecture.

Келесі