42. Which C# Web Application Type Should I use? MVC? Blazor? Razor Pages?

แชร์
ฝัง
  • เผยแพร่เมื่อ 17 พ.ย. 2024

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

  • @bendunaway8296
    @bendunaway8296 3 ปีที่แล้ว +40

    Blazor is my tech of choice. We have 4 server side applications in production, being used thousands of times per day, with no iddue. Blazor totally simplifies the development process for single page response application. Plus, I hate JS. :)

    • @IAmTimCorey
      @IAmTimCorey  3 ปีที่แล้ว +3

      Excellent!

    • @jessecavada3015
      @jessecavada3015 3 ปีที่แล้ว +10

      Some people would say “You are in the wrong job if you are building for the web while hating JavaScript.”

    • @maximeumbra7235
      @maximeumbra7235 2 ปีที่แล้ว +7

      Began as a complete beginner slightly under two years ago, tried js for a week and it felt like suffering involuntary convulsions every five minutes. C# was enjoyable from the first line i ever wrote in it.

    • @ChamuMatumbura
      @ChamuMatumbura 2 ปีที่แล้ว +8

      Once I got hooked up to Blazor, I kissed goodbye to JS.

    • @MrSurfsAlot
      @MrSurfsAlot ปีที่แล้ว +1

      @@ChamuMatumbura is it just me or is there literally still some things you pretty much HAVE to use JS for?

  • @karis7539
    @karis7539 3 ปีที่แล้ว +2

    One of the biggest reasons to learn C# is this channel

    • @IAmTimCorey
      @IAmTimCorey  3 ปีที่แล้ว +2

      I’m glad you feel that way.

    • @cissemy
      @cissemy 2 ปีที่แล้ว

      That's right.

  • @torrvic1156
    @torrvic1156 ปีที่แล้ว +2

    What I’ve got from this video and comments section: 1) use razor pages if you want to make a web application with a small or no user interactivity but with a lot of static pages with tons of info in them, 2) use Blazor WebAssembly strictly with an API (for security reasons) if you sure that clients of your web application will have to work in offline conditions and can’t have stable online connection (for example in some retail store with unstable VPN to their central office), 3) for the sake of better maintainability try to use one programming language and avoid mixing of different frameworks from different languages in one app, 4) use Blazor Server for everything else 😊
    Hopefully I’ve got it right 😂Thank you so much for this video Tim!

    • @IAmTimCorey
      @IAmTimCorey  ปีที่แล้ว +2

      That's a pretty good framework for decision-making.

    • @GameplayDexter
      @GameplayDexter ปีที่แล้ว +1

      Thank you for this summary. Did you left out MVC consciously?

    • @torrvic1156
      @torrvic1156 ปีที่แล้ว

      @@GameplayDexter you are welcome! I am glad that a newbie like me can give somebody some useful tips of information. Frankly I never used it sir so I can’t say much unfortunately. What do you think about MVC yourself? I think that actually Blazor looks the way better then MVC in most cases but I can be wrong.

  • @christiandiomangay5107
    @christiandiomangay5107 3 ปีที่แล้ว +28

    during college i got bucky roberts at my back but now its tim corey ..

    • @tomthelestaff-iamtimcorey7597
      @tomthelestaff-iamtimcorey7597 3 ปีที่แล้ว +1

      Thank you for continuing your learning with Tim.

    • @mememonster2370
      @mememonster2370 3 ปีที่แล้ว

      @@tomthelestaff-iamtimcorey7597
      i learned native andoid development fom bucky later got job in xamarin
      and now trying to learn web development,web api ,xunit tests with tim

    • @AlThePal78
      @AlThePal78 3 ปีที่แล้ว +2

      I use to love bucky :)

  • @Exozik
    @Exozik 3 ปีที่แล้ว +7

    This really helped me a lot grasping all the essentials differences and advantages of each project type. Very well done Tim!

  • @ghm7093
    @ghm7093 3 ปีที่แล้ว +5

    It worth mentioning that not every business/project is suitable for SPA; f.e. public pages or content-centric sites. So the type of the website/app affects which technology to choose. Very important!

    • @masterflitzer
      @masterflitzer 2 ปีที่แล้ว

      yeah most intranet apps in my company I wouldn't want to do as spa because it's just not suitable

  • @infas_mhd
    @infas_mhd ปีที่แล้ว +1

    I wish you do all tech related explanation that are not bound to C#. Your explanation is very clear even for a beginner. Kudos to you🙆‍♂

  • @aaronbrightware
    @aaronbrightware 3 ปีที่แล้ว +6

    I've been building a large forms heavy web app for past couple of years. I went with razor pages as I wanted something with strengths of web forms binding but cleaner. Blazor seemed too experimental, MVC has more ceremony than I find necessary, Angular and React add un-required complexity. It was the right decision for my project, no regrets and so far there has been no downsides. Have also made a couple of small side apps using Blazor Server. It was real easy to do, and super clean code. Could see myself moving to Blazor Server from Razor pages one day, but going to wait and see.

    • @andywalter7426
      @andywalter7426 3 ปีที่แล้ว +3

      I would actually recommend blazor server side at least. I worked with razor pages some. I think that blazor is much better than razor pages and makes it much easier to create components and break out the logic and easier to maintain.

    • @tomthelestaff-iamtimcorey7597
      @tomthelestaff-iamtimcorey7597 3 ปีที่แล้ว

      Thanks for watching and sharing your thoughts!

    • @aaronbrightware
      @aaronbrightware 3 ปีที่แล้ว

      @@andywalter7426 Agreed, I really like working with Blazor and its superior component model and have been on-board since the really early experimental demos. But I do find razor pages to be slightly more reliable, whereas I've experienced some odd quirks and bugs with blazor, simply because its a new paradigm. I'm going to wait till .net 6 before making any leaps!

  • @Omar.bin.khattab
    @Omar.bin.khattab 3 ปีที่แล้ว +1

    i am wondered why not your channel reach to 10 million , you deserve it , great job Tim

    • @IAmTimCorey
      @IAmTimCorey  3 ปีที่แล้ว +2

      Thank you!

    • @torrvic1156
      @torrvic1156 ปีที่แล้ว

      I think because programming is kind of a niche stuff. Tim’s channel is very popular if think about programming as a niche activity.

  • @pedrodesanti6266
    @pedrodesanti6266 ปีที่แล้ว

    your channel is the best for learning c# and dotnet, i am experienced with unity3d and now im trying to expand my knoledge of the ecosystem around it and your channel is pure gold

  • @tccoder3547
    @tccoder3547 2 ปีที่แล้ว +1

    This was great information and very timely for me because I was going to start a project in Blazer Web Assembly, and I needed to store secured information. I dodged that nightmare.

    • @IAmTimCorey
      @IAmTimCorey  2 ปีที่แล้ว +1

      You still can, you just need to do so with an API, but it is more complicated than other options.

  • @rendellgood
    @rendellgood 3 ปีที่แล้ว +11

    Amazing content with practical answers to so many questions I come up with. Thank you for these high quality tutorials/informative videos!

    • @IAmTimCorey
      @IAmTimCorey  3 ปีที่แล้ว +3

      You're very welcome!

  • @ModerateDev
    @ModerateDev ปีที่แล้ว +1

    Hey Tim thanks for breaking things down, it's hard to get the lay of the land with all the choices. I'm going to buy your course glad I stumbled upon this video

  • @fadge316
    @fadge316 3 ปีที่แล้ว +7

    I've been using Blazor server side recently, loving it. Took a while to figure out a lot of the quirks but I really like it

    • @IAmTimCorey
      @IAmTimCorey  3 ปีที่แล้ว +1

      Awesome!

    • @whatwhome6914
      @whatwhome6914 3 ปีที่แล้ว

      I seems like a Razor page app is better than Blazor for an app that has a large number of pages. I am doung an app that has over 50 webpages. I can't imagine how yhat would work in Blazor.

    • @ghm7093
      @ghm7093 3 ปีที่แล้ว

      @@whatwhome6914 It is a SPA; so the main point is to figure out how to organize your app in terms of "routes". It worth mentioning that not every business/project is suitable for SPA, f.e. public pages or content-centric sites.

  • @sriram151092
    @sriram151092 2 ปีที่แล้ว

    Easily one of the best videos for a beginner (Both for Web Dev. & Blazor) !!

  • @skewty
    @skewty 2 ปีที่แล้ว +3

    Great talk. I realize this video is limited (based on title) to c#, but it would be valuable context to many to mention how other frameworks do some of these "better" than MS's offering. Blazor requiring a large webasm blob is seen as 2nd class at best. It's MS's attempt to catch-up to other frameworks (and they haven't yet).

    • @IAmTimCorey
      @IAmTimCorey  2 ปีที่แล้ว +1

      Thanks for the suggestion.

    • @oh2txb18
      @oh2txb18 ปีที่แล้ว

      What would you say is better? Legitimately trying explore options at the moment.

  • @searcey
    @searcey 2 ปีที่แล้ว

    Thank you! Loving using C# for everything with Blazor Pages and .NET 6. Keep up the great work!

  • @PerryCodes
    @PerryCodes 3 ปีที่แล้ว +1

    I know that some people have a vested interest in Blazor succeeding but I don't see it happening for a couple reasons. 1. Silverlight. You know what I mean. I loaned an expensive piece of guitar gear to a recovering addict so he could get back on his feet. I never saw it again. A year later he asked if he could borrow a guitar... I was introduced to the "Fool me twice" saying... You may feel differently, but I think that concept applies here. That's number one, but it pales in comparison with number 2. At every turn, the reason for choosing Blazor is NOT "This is superior in every way to your other choices!" Nope. You know what THE NUMBER ONE reason developers are given to choose Blazor over anything else? "You already know C#... why bother re-tooling to JavaScript? Use all the skills you already have and build something comparable to those JS boys!" Uh... Bzzzzzt. Wrong.
    JavaScript is THE LANGUAGE of the web. Full Disclosure: I'm NO JavaScript fanboy. As a matter of fact, C# has been my language of choice for almost two decades now after leaving Java. It served me quite well for nearly the previous decade. The best middleware used Java at the time. I strongly feel the best frontend frameworks require JavaScript/TypeScript. Don't buy into a crutch you must use for the remainder of a product's lifetime, that may or may not continue being supported by Microsoft. Mastering JavaScript for the frontend, even if you continue with C# in the middle and backend tiers... You won't regret it one iota!

    • @IAmTimCorey
      @IAmTimCorey  3 ปีที่แล้ว +2

      I'll take on that challenge. Let's address your points one at a time. So your first point is that you were burned by Silverlight (weren't we all), so you aren't going to get burned by Blazor. I know that's the common comparison, but it's an apples to oranges comparison. Silverlight was a proprietary Microsoft technology that relied on browsers to support a custom extension to bring a proprietary coding language to the web. It required access that opened the browsers up for danger/viruses. That effort failed. People didn't install the extension, browsers struggled with supporting it vs maintaining security, and Microsoft got tired of the effort. That was a bad situation. Blazor is an open-source project built upon a web standard. Blazor Server uses SignalR and JavaScript to communicate (SignalR is just a wrapper around web sockets with fallbacks for long polling and other communication methods - all of these are web standards). Blazor WebAssembly uses WebAssembly, a JavaScript system for supporting web applications. All of this is built upon industry standards. None of this is proprietary. All of it is open source. So comparing an open source, web standard project against a closed-source, proprietary solution with no external backing is a bad comparison.
      OK, point two is that JavaScript is the language of the web so therefore C# is just inferior on the web and shouldn't try to compete. That's not what Blazor is doing. Blazor is building on JavaScript so that we can use C# for some of the interactions and JavaScript for the rest. Right now, the common "wisdom" seems to be that if you want any type of web application, you need Angular, React, or Vue. There's a problem there. It is like buying a Ferrari for every person that needs a car. Sure, some might need/use it but not everything needs that type of overhead. That's where Blazor comes in. It provides a web-standards compliant way to use C# to extend into the common areas of web applications. The benefits of doing so are that it reduces the number of applications that need full SPA frameworks, plus it reuses existing skills. You dismiss the idea that reusing existing C# skills is a factor, but I feel that's incorrect. Being an expert in C# and an expert in JavaScript (including at least one SPA framework) is practically impossible. As you get better in one, your skills will suffer in the other. It can be done, but it takes a tremendous effort (been there, done that - Angular front-end and WebAPI backend as a lead developer with only one other developer on the team). By allowing C# developers to go all the way to the full front-end with C#, we reduce the skills necessary for some teams. Yes, there is still definitely a place for SPA frameworks. However, now a shop has options. If they have two developers, they don't have to dedicate one to each language (or be ok with mediocre in both developers).
      The lie JavaScript has taught us is that the only way to truly exist on the web is through mountains of JavaScript code. That's just not true. Not every web application needs to be a client-side app. Not every web app needs to be a full SPA. Not all code on the front end of the web needs to be written in JavaScript.

    • @PerryCodes
      @PerryCodes 3 ปีที่แล้ว

      @@IAmTimCorey Woah!! You brought a Model M to a membrane and rubber domes fight!

  • @the-nasim
    @the-nasim 3 ปีที่แล้ว +1

    Frontend: Next.js
    Backend: ASP.NET Core
    Perfect combination 😍

    • @tomthelestaff-iamtimcorey7597
      @tomthelestaff-iamtimcorey7597 3 ปีที่แล้ว +2

      Well... That is an option 😉

    • @SayWhaaaaaaaaaaaaaaaaaaaaaaat
      @SayWhaaaaaaaaaaaaaaaaaaaaaaat 3 ปีที่แล้ว +1

      If u uave blazor, why would use inefficient javascript?

    • @the-nasim
      @the-nasim 3 ปีที่แล้ว

      @@SayWhaaaaaaaaaaaaaaaaaaaaaaat Well because first of all I know Next.js 😁 and currently learning ASP.
      The cool thing about next.js is that it can generate static page. Which is just html, css. After that it can behave like a react application.
      Next.js has many cool feature that is well suited for most of the websites.
      And I think webassembly is overkill for basic pages like blog, portfolio etc.
      At the end, It always depends.

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

    Thanks for this Tim. When I go to Microsoft docs trying just to home in on a starting point, I get easily overloaded with all the acronyms and discouraged.

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

      You are welcome.

  • @LuigiZambetti
    @LuigiZambetti 3 ปีที่แล้ว +15

    Tim do you make a full playlist for a Blazor Server web application in the future?

    • @tomthelestaff-iamtimcorey7597
      @tomthelestaff-iamtimcorey7597 3 ปีที่แล้ว +4

      I will add that great suggestion to Tim's list. In the mean time, get a head start using this list of Tim's Blazor videos - th-cam.com/users/IAmTimCoreysearch?query=blazor

    • @codyjmathis
      @codyjmathis 3 ปีที่แล้ว

      +1 - I as well would love to see a full series using Blazor server. It’s such a powerful tool for so many use cases out there.

  • @bryanplum9061
    @bryanplum9061 3 ปีที่แล้ว +4

    Hey man, thank´s for this video. I´m from Brasil, and learn a lot in you chanel ! Keep doing this work!

    • @IAmTimCorey
      @IAmTimCorey  3 ปีที่แล้ว +2

      Glad to hear that!

  • @paulminshall8793
    @paulminshall8793 2 ปีที่แล้ว +1

    In our company, every problem looks like a Mendix application. This is because they bought it before proper evaluation and it is so expensive, they are trying to utilise it everywhere.

  • @objectaware5296
    @objectaware5296 3 ปีที่แล้ว +1

    Great run down but there was one point that was not mentioned.
    Blazor is a Single Page Application (SPA) that has some limitations, disadvantages over MPAs.

    • @objectaware5296
      @objectaware5296 3 ปีที่แล้ว

      @Soy Orbison, sure if you're debating SPA versus MPA but the topic is what to use from the .net ecosystem, and knowing the advantages disadvantages of Blazor SPA versus Razor Pages MPA is necessary knowledge.

    • @allthecommonsense
      @allthecommonsense 3 ปีที่แล้ว

      Lol. Imply a problem but don't provide even a few example details. That's helpful.

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

    Hey Tim, could you make an updated version of this video comparing .Net 8 technologies?

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

      It is coming, but not right away, though. I want to get some things built with Blazor first.

  • @aaronvancuren7946
    @aaronvancuren7946 3 ปีที่แล้ว

    Wow, first year in the industry and you just blew my mind and solved an issues I was having with React and individual account authentication.

  • @mhmrezaramezani4777
    @mhmrezaramezani4777 ปีที่แล้ว

    Thanks for that video! that was good and clear. I'm lazy to change to blazer but this video encourages me.

  • @kmills-swimmin
    @kmills-swimmin 3 ปีที่แล้ว +1

    Around 18 mins in you mention news sites like CNN, etc. Hypothetically, which of these project types would you recommend for CNN? I feel like it would be Blazor Server? To try and reduce that huge initial load, and still allow for the interaction. Would you agree? P.S. You are amazing, you're the first person I'll be donating to on Patreon ever.

    • @IAmTimCorey
      @IAmTimCorey  3 ปีที่แล้ว +3

      I would probably lean towards Razor Pages. Blazor is best when there is user interaction (capturing user input, etc.). CNN is mainly used for consumption of content. Razor Pages are really quick and light. They are also simple. Later, if you want to add in Blazor Server (or MVC or API), you can easily just add it in for the pages that need it.

  • @LiveMahs
    @LiveMahs 3 ปีที่แล้ว +1

    Thanks for the video. I'm a junior at a company that has an old Web Forms app that I work on, but they're phasing it out this summer so, I'm looking for a new job and I'd like to be prepared/start a couple projects with a frequently used framework. I don't want to be in this position again lol. I'm starting to learn JavaScript as well, so I'm hoping I can transition to a JS role eventually.

  • @emanuelfaisca1783
    @emanuelfaisca1783 3 ปีที่แล้ว

    Thank you for this! I just got a technical challenge and this info helped me to plan what to do.

  • @FiveNineO
    @FiveNineO 3 ปีที่แล้ว +29

    The stack is getting quite confusing if I'm honest

    • @tomthelestaff-iamtimcorey7597
      @tomthelestaff-iamtimcorey7597 3 ปีที่แล้ว +4

      All the more reason to stay up to date with Tim!

    • @TheCameltotem
      @TheCameltotem 3 ปีที่แล้ว +1

      MVC will be around. But if you're just starting out just go with Blazor Server side or .NET api + Javascript. Those are the most popular to use at work.

    • @TheCameltotem
      @TheCameltotem 3 ปีที่แล้ว

      @Soy Orbison Yeah it's easier but I think you have to ask yourself why we even define a class in the beginning? I mean look at typescript, it's becoming really popular because typed languages save so much in regards of errors.

    • @SuperDre74
      @SuperDre74 3 ปีที่แล้ว +1

      @limelight81 But when would you need to consume an arbitrary structure in your webapp, you can only process it when you know what you want to do with it (unless it's some sort of data testing thing). And as you say, it's also possible with stuff like blazor.

    • @johnmadsen37
      @johnmadsen37 3 ปีที่แล้ว

      @limelight81 front end JavaScript guys will always go with untyped, error prone script. Blazor with the front end running converted c#, solves this for OOP guys.
      People don’t know what they don’t know. Script guys are usually surface level understanding of oop, if any.

  • @jackma7570
    @jackma7570 ปีที่แล้ว

    very comprehensive answer, thanks Tim

  • @angmathew4377
    @angmathew4377 3 ปีที่แล้ว +1

    I wonder blazor and blazor assembly are two different project types. And offloading Signal R to azure Signal R servers , are new stuff man. Thanks for making jargons a bit easier.

    • @IAmTimCorey
      @IAmTimCorey  3 ปีที่แล้ว +3

      Yep, Blazor Server and Blazor WebAssembly are two different project types. I am glad you learned something new.

  • @chrisklecker
    @chrisklecker 2 ปีที่แล้ว

    Thank you. I was researching what environment and architecture I might need for an application I am building. Sounds like Blazor Web Assemblies it is. Now time to learn it. :D

    • @IAmTimCorey
      @IAmTimCorey  2 ปีที่แล้ว +1

      Glad it was helpful!

  • @charliewong9093
    @charliewong9093 2 ปีที่แล้ว

    Awesome! What a good question, thanks for your introduction.

  • @jonbordon3406
    @jonbordon3406 3 ปีที่แล้ว +6

    Thanks for a great explanation! I have a question. People talk alot about the downside that you can’t use a Blazor server app when the network is down, but who tries so surf the web when the network is down? Pretty much all sites become pretty useless without an internet connection, right? What am i missing here?

    • @victorene3608
      @victorene3608 3 ปีที่แล้ว +1

      My thoughts exactly.

    • @IAmTimCorey
      @IAmTimCorey  3 ปีที่แล้ว +6

      Web applications can definitely benefit from offline access. For instance, the cable company where I used to live used a web application for their technicians. That way, their technicians could use any phone/tablet they wanted. However, their technicians were working on installations where the Internet might not work so they made the web app a PWA with offline capabilities. The tech would fill in the work ticket information offline (if necessary) and would then sync it when they got back online. Delivery services also use systems like this.

    • @kevinmungame1869
      @kevinmungame1869 3 ปีที่แล้ว +1

      On point, I don't know why everyone keeps calling it downside...what do you wanna do on the browser if the server is down?? There's no magic about it, it should just disconnect

    • @tomahawk5357
      @tomahawk5357 2 ปีที่แล้ว +1

      @@kevinmungame1869 To me, coming from a desktop developer background it's not something conceivable that one user click in the front-end trigger a round trip to a server. And I am not an ecologist! Therefore I have never been interested by Blazor Server but Blazor Webassembly is another story.

    • @josephmoore7403
      @josephmoore7403 2 ปีที่แล้ว +1

      Its about the purpose of the app... If the primary purpose is presenting info offline is pretty useless. If its about collecting information offline could be vital.

  • @bolbittu
    @bolbittu 3 ปีที่แล้ว +2

    I still miss Web Forms. In my experience it was the fastest way to launch an application. Even without drag and drop thing. I never became fan of MVC project type. Especially with EF. I always enjoyed ADO.NET and used in most projects as data access tool.
    I know web forms doesn’t fit into the modern web development environment but I think, I had my best time in development with it. Razor Pages is my choice now.

    • @IAmTimCorey
      @IAmTimCorey  3 ปีที่แล้ว +2

      Have you checked out Blazor Server yet? It isn't exactly the same as WebForms, but the spirit of WebForms is absolutely there. It is quick to build, it is quick to reuse "pages" as components, and it has the best of both client-side and server-side development.

    • @bolbittu
      @bolbittu 3 ปีที่แล้ว

      @@IAmTimCorey I’m hearing a lot about Blazor Server these days. I heard quite good things when it comes to single page application development. But I’m still not sure if I can make complex ERP applications with it.
      But I guess I need to try it before I come to any conclusion.

    • @IAmTimCorey
      @IAmTimCorey  3 ปีที่แล้ว +3

      While it does act like a single page application (SPA), it isn't really the same thing. It has the same scalability of any web application for making complete ERP applications. The biggest "concern" you will need to have is on the scaling of the SignalR connection. A good server can handle between 10,000 and 20,000 simultaneous connections. After that, you need to either offload your SignalR to Azure SignalR or spool up a second web server. Not really an issue since you probably need to scale everything up at that point anyway (remember, this isn't 20,000 connections per day but at one time so you can have hundreds of thousands of daily visitors without issue).
      Here is an intro video on Blazor Server: th-cam.com/video/8DNgdphLvag/w-d-xo.html
      If you come to the point where you want to move forward with Blazor and need to know more, my Blazor Server In Depth course will really help: www.iamtimcorey.com/p/blazor-server-in-depth

  • @srinivasmantha5994
    @srinivasmantha5994 2 ปีที่แล้ว

    Excellent introductory presentation.

  • @pw.70
    @pw.70 3 ปีที่แล้ว +1

    Excellent explanations - thanks Tim.

  • @AlThePal78
    @AlThePal78 2 ปีที่แล้ว +1

    What is the difference between a DTO and a ViewModel and how do you use them?

  • @yusiff
    @yusiff 2 ปีที่แล้ว

    Hey, Tim! Thanks for the video. It was very informative.

  • @arthurnamu5770
    @arthurnamu5770 3 ปีที่แล้ว +2

    Tim, you are an absolute blessing man. Thanks. A question for the next Dev Series,
    In Desktop we had RDLC and Crystal Reports to design reports. Now that I have moved to Web is there a tool that is as good as these two? I am having a hard time customizing and exporting reports to pdf.

    • @sergiolindolfo
      @sergiolindolfo 3 ปีที่แล้ว

      I use Telerik Reports, I worked for many years with Crystal Reports and SQLRS, I found in Telerik Reports what I needed, you can do the Reports with the Visual Studio Designer or with the Report Designer (Windows only), but what I like most is Telerik Report Server, where I publish all my reports and then run on my ASP.NET MVC or Blazor Client applications.

    • @tomthelestaff-iamtimcorey7597
      @tomthelestaff-iamtimcorey7597 3 ปีที่แล้ว

      I noted your recommendation by adding it to Tim's list of possible future topics, thanks.

  • @bardus_hobus
    @bardus_hobus 3 ปีที่แล้ว +3

    What would you recommend for an e-commerce site? I was thinking of starting in MVC but you think blazor server would be better? Would I still use mvc architecture?

    • @attilaguba856
      @attilaguba856 2 ปีที่แล้ว +1

      I'm just using Asp Net Core MVC .Net6 to build E-Commerce now! Mostly I use MVC but I tried Razor too! I do prefer MVC though! But definitely I'm interested in Blazor never used!

  • @AholicWiki
    @AholicWiki 3 ปีที่แล้ว

    I giggled about you saying people getting scared about 10mb of data I thought the days were over of people worrying about it. Even public wifi (I know shouldn't be used) is still bad but you can get a website downloaded on your phone or laptop browser client fast, yes if they were a bigger distance away from the server it would be slow like connecting to a server in the UK from the US (just an example). I think I'm going to try and become very well known with blazor I think it would be much better within a company.

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

    So Blazor Web Assembly is like an analog of React from Microsoft world?
    And Blazor Server is like Next.JS correct?
    I just need to wrap my head around this new stuff for me, as I am coming from JS world :)

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

      This can be a confusing topic. What makes it even more confusing is that Microsoft combined the two concepts into one in .NET 8. But let me explain each individually first.
      Blazor WebAssembly (WASM): Similar to React, yes. It is fully client-side rendered.
      Blazor Server: Somewhat similar to Next, but also different. It is a Server-Side Rendered language (SSR), so no code goes to the client. However, it uses SignalR (really just a wrapper around Web Sockets) to give real-time client-side interactivity. That gives you the safety of a server-side language while giving you the functionality of a client-side language. The only downside is the constantly-open connection to the server (super-tiny, so you can have thousands of connections on even a decent web server).
      Now let's discuss .NET 8. In .NET 8 we have two Blazor projects:
      Blazor WebAssembly - Yes, this one still exists because you can make a PWA and run your web application offline.
      Blazor Web App - This can do SSR, Server, and WebAssembly all in one project. You can use SSR for pages that don't need client-side interactivity (or not much, since there can be a little). Then you can also have components that are Server or WebAssembly. This means the page could be SSR, but a small piece could have client-side interactivity. The really nice one is when you say the component is Auto. That means that the component renders initially as Server, since a Blazor Server component is very quick to render (but relies on that connection). However, in the background, the WebAssembly version of that same component is downloaded to the client. When the download is complete, the component is swapped out for the WebAssembly version. The client will use the WASM component from then on, including on future page renders. This gives you the initial speed of server-rendered Blazor Server and then gives you even more speed with the client-side rendered component without needing to wait for the initial download and now without having to rely on a constant SignalR connection anymore either.

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

      @@IAmTimCorey Thank you for such a detailed answer. You are the C# Legend

  • @LilPozzer
    @LilPozzer 3 ปีที่แล้ว +2

    What about a video explaining what (auto) mapper is better to use?

    • @IAmTimCorey
      @IAmTimCorey  3 ปีที่แล้ว +2

      Thanks for the suggestion. In general, Automapper is probably the way to go.

  • @krzysztofkrupinski5709
    @krzysztofkrupinski5709 3 ปีที่แล้ว +1

    Hi! Thank you very much for posting this video as it answers all my questions :)

    • @tomthelestaff-iamtimcorey7597
      @tomthelestaff-iamtimcorey7597 3 ปีที่แล้ว +1

      Thanks for watching! ... and I bet you could find a couple more questions he did not cover. LOL

  • @MusicForHourss
    @MusicForHourss 2 ปีที่แล้ว

    Next time I would like to see some diagrams or text on the screen. Hard to follow when I can only listen to your voice and try to get that information into my head

    • @IAmTimCorey
      @IAmTimCorey  2 ปีที่แล้ว

      We are still working through this. The issue is that you are seeing a podcast. It is meant to be listened to. You get to see extra because you are watching it, but I don't want the listening experience to be less valuable.

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

    Blazor WASM is my preferred choice. Way, way better than MVC, and orders of magnitude better than Angular.

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

      Thanks for sharing!

  • @sachinambre9451
    @sachinambre9451 3 ปีที่แล้ว +3

    Which project type will you suggest to build real time web application like stock trading application?

    • @JoePiotti
      @JoePiotti 3 ปีที่แล้ว +3

      Blazor server is perfect for that.

    • @mysteryman8007
      @mysteryman8007 3 ปีที่แล้ว +1

      @@JoePiotti Could you elaborate, I'm also looking into this so it would be nice to get an explanation as to why Blazor is a good choice.

  • @SaadMuhammadAmin
    @SaadMuhammadAmin 2 ปีที่แล้ว +1

    Blazor server seems to be very good. But can you please guide in what specific scenarios it might not be suitable to use? Why having an always-on connection be a problem?

    • @IAmTimCorey
      @IAmTimCorey  2 ปีที่แล้ว +3

      Offline access. That's the big one.

  • @andywalter7426
    @andywalter7426 3 ปีที่แล้ว +2

    I had an experience one time where I built a server side blazor application and it was actually a little slow when I was using the free hosting from azure. When I showed off the page to somebody since I wanted somebody else to eventually host, they said they would have to reject it because they knew it took too much server processing power which would shut down their other sites. I then did the web assembly version of the same app and except for the initial download size, it was actually much faster. In this situation, since I can't afford any data access, all the data was actually from embedded resource but since interfaces was used, then there was an option to eventually use a database. I have found many cases where a person can have a web assembly app with no server or any database. If the data is mostly static (from embedded resource), then a server is not even necessary. Plus, even with blazor server side, a database is not free anyways and the storage for the free account is really limited. I used local storage a lot even though the data can go away at any moment. Plus I have some web apps I created that had to run offline because I have no internet on my device so that ended up being a good choice.

  • @sergiokml
    @sergiokml ปีที่แล้ว +1

    Hi Tim, I need to develop an intranet that connects to sql (EF) and also to a Sharepoint site (Graph). What kind of project do you recommend? blazor? razor? both? Ty!

    • @IAmTimCorey
      @IAmTimCorey  ปีที่แล้ว +2

      I'm sorry, I really can't give you a specific answer. You need to figure out what works best for your specific situation. For instance, as a consultant, there were about 30 things I would evaluate to make a decision on which technology to use in a given situation, and it would even change per-project.

  • @leosilva0411
    @leosilva0411 3 ปีที่แล้ว +1

    Hey Tim nice video! My question is, what are the techniques that we can use to implement SEO better, since Blazor Web Assemblies, for instance, don't take that in account and just return simple HTML to the search engines. Thanks!

  • @waliqadri
    @waliqadri ปีที่แล้ว

    Thank you so much for this video. amazing video. I love Microsoft Technologies.

  • @ericberman3965
    @ericberman3965 2 ปีที่แล้ว

    Great video! Your explanation was a huge help

    • @IAmTimCorey
      @IAmTimCorey  2 ปีที่แล้ว

      I am glad it was so helpful.

  • @ozanyasindogan
    @ozanyasindogan 3 ปีที่แล้ว +1

    Blazor server is not fast at all actually while rendering changes on client. Users will have a lagging feeling if it’s not an intranet application. For dynamic client pages, blazor webassembly should be the way to go. Yes blazor server is much easier to arcihtect but it’s only good for intranets

    • @IAmTimCorey
      @IAmTimCorey  3 ปีที่แล้ว +1

      I have not had that experience on the web (running production apps on a cheap web host). It sounds like you had some bad configuration or you were pushing way too much data to the screen somehow. Blazor Server can handle thousands of records on the screen while scrolling with very little issue. Plus, now with .NET 5 and the Virtualize tag, you can have millions of records and yet have a smooth experience.

    • @allthecommonsense
      @allthecommonsense 3 ปีที่แล้ว +1

      Probably used an Azure free tier and didn't enable Web sockets, lol.

  • @viktoralferov2874
    @viktoralferov2874 3 ปีที่แล้ว

    If you do not need SEO - use any you want. But all IT history going to Containers. Immutable "bytes" (not script file) as Container - best choice, imho. Compile before send to Client - for ever )

    • @IAmTimCorey
      @IAmTimCorey  3 ปีที่แล้ว +1

      I am not sure what you are trying to communicate here. Containers (I'm assuming Docker containers) just hold a web application. Which type of ASP.NET Core web application you use in a container is up to you. You wouldn't send a container to an end user to run your site. That would be impractical. If you mean you would send them to a customer who used them as their web server, that would work. However, only the image is immutable, not the container. It also does not really protect your sensitive data to be in a container.

  • @Timlaare
    @Timlaare 3 ปีที่แล้ว +1

    Hi Tim! Question:
    I'm planning to build a very small website in which users can order tickets for an event organized by a voluntary organization. In the past the 200 tickets for this event were sold out after 3 minutes. So this website should be able to handle around 200 users in 3 minutes. I don't have to implement payment functionality. This organization will contact the people that have ordered a ticket for the payment afterwards.
    I'm doubting if I should use MVC, Blazor Server or Blazor Web assembly. Performance is key. Which project type would you suggest?

    • @IAmTimCorey
      @IAmTimCorey  3 ปีที่แล้ว +3

      The fastest for your situation will probably be Razor Pages. They are super-quick.

  • @lxc3909
    @lxc3909 2 ปีที่แล้ว

    Thanks for some great info--but, the title includes Razor Pages, which are not covered at all in the video. :[

  • @cyrildouglas9262
    @cyrildouglas9262 3 ปีที่แล้ว +3

    Tim, which one do you prefer (Angular, Vue or React)?

    • @kevincordell9539
      @kevincordell9539 3 ปีที่แล้ว +2

      I prefer Angular because it is more like c# to me. Yes, it has a steeper learning curve, but like I said it was more natural to me to go along with web api.

    • @cyrildouglas9262
      @cyrildouglas9262 3 ปีที่แล้ว

      ​@@kevincordell9539 I move to web apps soon, and sure I give an angular test, thanks for stating that.

    • @IAmTimCorey
      @IAmTimCorey  3 ปีที่แล้ว +8

      I prefer to keep all of my development in one language (C#) whenever possible. It allows my developers to be more of an expert in the language because they aren't trying to be an expert in two languages. However, when I can't, I tend to lean towards Vue. It is simpler than the other two, with less to go wrong and less to learn. I used to use Angular, but they burned me with the move from 1 to 2. I'm really not a fan of the rapid iterations on any of them. It makes developing an enterprise system really hard.

    • @cyrildouglas9262
      @cyrildouglas9262 3 ปีที่แล้ว

      @@leeroy1986 Thank you so much for the clarification.

    • @cyrildouglas9262
      @cyrildouglas9262 3 ปีที่แล้ว

      @@IAmTimCorey Thanks so much, your point of view always makes things easier.

  • @ChargedPulsar
    @ChargedPulsar 2 ปีที่แล้ว +1

    This video is amazing! Thank you Corey. This is how an education video should be. Clear and informative! Just to the point.

  • @gabrielgracenathanana1713
    @gabrielgracenathanana1713 ปีที่แล้ว

    1, put it double speed (not even 1.75). 2. listen to his analysis, but put the weight the opposite way. For example, he mentioned api, but put it the least weight. In reality, do that opposite. Use Angular.

    • @IAmTimCorey
      @IAmTimCorey  ปีที่แล้ว

      This is like coming into a discussion on what different screwdrivers do and insisting that the right choice is a hammer. Different tools have different jobs. Different web application types have different jobs, which is what I was conveying. I'm not sure if you think I was de-emphasizing API or emphasizing it, but API is an important tool that every web developer should know how to use. It just isn't the solution to every problem.

  • @laurenzvien
    @laurenzvien 3 ปีที่แล้ว +1

    Great vid, Tim. I now got a clarification on the differences of these frameworks. On a different note, will you have a video covering microservices? Currently have a project and was thinking if I should do microservice as more services will be coming in the future.

    • @tomthelestaff-iamtimcorey7597
      @tomthelestaff-iamtimcorey7597 3 ปีที่แล้ว +2

      Thank you. I have added this to Tim's list of possible future topics.

    • @laurenzvien
      @laurenzvien 3 ปีที่แล้ว +1

      @@tomthelestaff-iamtimcorey7597 thank you!

  • @sirajshaikh3940
    @sirajshaikh3940 3 ปีที่แล้ว +1

    hi tim, i building a website with blazor web assembly, which needs to SEO Freindly, i didn't find any material for seo in blazor webassembly could you please make tutorial regarding this topic ,
    by the way huge fan of your tutorial and your timco retail manager project is GOLD

    • @tomthelestaff-iamtimcorey7597
      @tomthelestaff-iamtimcorey7597 3 ปีที่แล้ว

      Thanks for the recommendation. I have added it to Tim's list of viewer suggestions for videos.

  • @YOUTUBE_IS_WOKE
    @YOUTUBE_IS_WOKE 2 ปีที่แล้ว +1

    Hi Tim, is Razor and/or MVC in danger of getting phased out like web forms, in maybe 3 years, due to Blazor support? cheers

    • @IAmTimCorey
      @IAmTimCorey  2 ปีที่แล้ว +1

      No, I don’t think so. They each serve a purpose still, plus they are web standard designs, unlike WebForms.

  • @codyjmathis
    @codyjmathis 3 ปีที่แล้ว

    Tim - can you clarify your statement about web forms here in that you said web forms will not be in .NET core and is basically EOL in Framework. This seems to contradict a newer video you made on VS 2022 by saying .NET 6 and future will be the only frameworks supported in VS 2022 while at the same time VS 2022 provides great new support for displaying web forms content in the designer.
    Understanding of course web forms will still only run on Windows, can you clarify if web forms will still use Framework or will we be able to target .NET 6?
    Great work, thanks!

    • @IAmTimCorey
      @IAmTimCorey  3 ปีที่แล้ว

      That was preview 1. Preview 2 fully supports .NET Framework. No .NET Core for WebForms though.

  • @lenardbartha6722
    @lenardbartha6722 3 ปีที่แล้ว

    A lot of companies who build components to these projects still have more for MVC vs Blazor. However they are growing...

  • @jordanjobes4115
    @jordanjobes4115 2 ปีที่แล้ว +1

    you are the man!

  • @getsmartpaul
    @getsmartpaul 2 ปีที่แล้ว +2

    Do blazer client apps run in mobile apps on iPhone and android?

    • @IAmTimCorey
      @IAmTimCorey  2 ปีที่แล้ว +1

      Blazor WebAssembly can be a progressive web application (PWA). That means that you can install it on any client (iOS, Android, Mac, Linux, Windows, etc.) as if it is an application. However, it is just a small wrapper around a headless browser window. This is a way to get your web app to look and function like a mobile app for practically free. However, it does not have access to anything more than what a regular web application has access to. You cannot get access to any specific resources like a mobile app can.

  • @emersonstori
    @emersonstori 2 ปีที่แล้ว

    Very good, many doubts I had.
    I'm wanting to use Blazor in a project with almost 2000 tables, I don't know if it's suitable for something like that. I will have to find out.

    • @IAmTimCorey
      @IAmTimCorey  2 ปีที่แล้ว +1

      Sure. Just remember that humans don't have the ability to comprehend that much information on the screen at one time. Show what they need to make a decision (it is less than you think). Paging, caching, etc. will make your site very responsive.

  • @lowrez1646
    @lowrez1646 3 ปีที่แล้ว

    Nice summary Tim. So it sounds like mostly it's a combo of Web-API + Razor Pages these days where the Razor page is basically hosting/containing the front-end JS client (aka, Angular, React, or even html/css + pure js etc). Is that a correct assumption? That's kinda where I landed recently doing a small one-off time-tracking app for our family biz.

    • @tomthelestaff-iamtimcorey7597
      @tomthelestaff-iamtimcorey7597 3 ปีที่แล้ว

      We hope Tim's videos continue to help you grow your skills to help support that family business.

    • @lowrez1646
      @lowrez1646 3 ปีที่แล้ว

      @@tomthelestaff-iamtimcorey7597 I guess that's a 'yes' then to my question... ?
      Thank you though either way.

    • @IAmTimCorey
      @IAmTimCorey  3 ปีที่แล้ว +1

      No, the answer to the question is that it depends. If I were starting today, I would probably use Blazor. Lest context switching between languages.

    • @lowrez1646
      @lowrez1646 3 ปีที่แล้ว

      @@IAmTimCorey Yeah, for pure greenfield I'm kinda ready to go Blazor (where as a year back I felt it wasn't quite there yet); beyond the context switching I am personally 100% tired of the insane complexity of the front-end stack. It feels like current JS UX approach has 'jump the shark' and I've actually gone back to writing vanilla JS for my small projects.
      Anyway, thanks for the clarification Tim, appreciate it.

  • @waleedeissa2270
    @waleedeissa2270 3 ปีที่แล้ว +2

    Thanks Tim. Could you please tell me the name of the cheap hosting service you mentioned at the end of the video?

    • @IAmTimCorey
      @IAmTimCorey  3 ปีที่แล้ว +1

      Here is a link to them (affiliate link): www.interserver.net/r/589892
      Make sure to get the ASP.NET hosting (which handles .NET Core just fine).

    • @bobclemens8065
      @bobclemens8065 3 ปีที่แล้ว

      I use this one: also very inexpensive and great service: winhost.com

  • @branislavpetrovic7486
    @branislavpetrovic7486 3 ปีที่แล้ว

    Excellent video Tim!
    Thanks!

  • @jeffkennedy2269
    @jeffkennedy2269 2 ปีที่แล้ว +1

    I would like to go with WASM but I still need to hit web services, not API's, is that a problem?

    • @IAmTimCorey
      @IAmTimCorey  2 ปีที่แล้ว +1

      It depends on the type of web service. Remember that nothing is secure on the client-side, so you can't put access tokens or other items in the Blazor code that authorize the application to talk to the web service. If you can use application authorization or ask the user for credentials, then you will be fine.

  • @kevinmungame1869
    @kevinmungame1869 3 ปีที่แล้ว

    Blazor server is the best, for way bigger project I would likely consider razor pages

    • @IAmTimCorey
      @IAmTimCorey  3 ปีที่แล้ว +1

      There is no best in my opinion. Each has their strengths and weaknesses and you choose what is best for your specific situation. All of these can handle a large application.

  • @michelchaghoury870
    @michelchaghoury870 3 ปีที่แล้ว +2

    gr8 vide like always keep going tnx a lot for your efforts

  • @jhbonarius
    @jhbonarius 3 ปีที่แล้ว

    Interesting that you get asked this question a lot. I think people that ask this question are not practicing enough. It's like asking "which fruit is the best". Or your comparison is better "which tool type is the best".

    • @IAmTimCorey
      @IAmTimCorey  3 ปีที่แล้ว +2

      It comes from not actually having used them all, which is understandable. If you haven't used any yet, you will want to know which one is the best.

    • @jhbonarius
      @jhbonarius 3 ปีที่แล้ว

      @Soy Orbison true, true. But it's like if you read things like the Buddha's teachings: often people come to the Buddha with a question, and often the Buddha makes that person realize that that question is not important at that moment, and there is an underlying thing that one should focus on.
      I'm quite active on stack overflow, and often you see questions like "how can I optimize this code" by people who don't seem to yet understand the fundamentals of programming. Imho they should focus on other things first

    • @jhbonarius
      @jhbonarius 3 ปีที่แล้ว +1

      @Soy Orbison I was thinking of a second similarity, which you actually see quite often: people starting playing electric guitar and asking things like "which are the best pickups" and "I want to buy a $5000 guitar, which should I buy". While they should first focus on learning to play the guitar. Maybe join a band. See if they will actually like it for longer then a year (because many people actually drop the hobby within).

  • @NicholasAllen-uu9qc
    @NicholasAllen-uu9qc 6 หลายเดือนก่อน

    Do you ever see people mixing both Blazor Server App and WebAssembly into one project? I have a project where certain areas need to always be online, and other areas where it has to still function if connection is lost.
    Also, for WebAssembly what is the process for pushing updates and changes to the solution if a user already has it downloaded to their machine?

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

      Have you seen the new Blazor Web App in .NET 8 (which mixes both and more): th-cam.com/video/walv3nLTJ5g/w-d-xo.html
      As for WebAssembly, it updates itself in the background automatically.

  • @dawidbiell
    @dawidbiell 3 ปีที่แล้ว

    Good explenation. Solved a lot my concerns.

  • @lastidea4925
    @lastidea4925 2 ปีที่แล้ว

    Quick info: MVC is actually just a architectural pattern. But Microsoft developed a technology for implementing it easily

  • @LukeAvedon
    @LukeAvedon 3 ปีที่แล้ว

    Excellent overview!

  • @PerryCodes
    @PerryCodes 3 ปีที่แล้ว

    16:19 - if you don't already have more that one project then either your project is in the "small utility" realm or you probably have A LOT of refactoring to do in order to get that thing Clean, Testable and SOLID-compliant.

    • @IAmTimCorey
      @IAmTimCorey  3 ปีที่แล้ว +1

      For Blazor WebAssembly, the second project is another UI project (an API) as opposed to just a class library.

    • @PerryCodes
      @PerryCodes 3 ปีที่แล้ว

      @@IAmTimCorey Ahh. Thank you for the clarification.

  • @94089463
    @94089463 3 ปีที่แล้ว +1

    Tim:
    I'm building an intranet application (local web server) for 15 users using Blazor Server.
    When I try to publish it, it requires SignalR hosting.
    What's the least expensive way to implement this in a local server?
    Thank you

    • @IAmTimCorey
      @IAmTimCorey  3 ปีที่แล้ว +1

      Unless your web host does not allow web sockets, you should not need separate hosting for SignalR. It just runs on the web server.

    • @94089463
      @94089463 3 ปีที่แล้ว

      I'll give it a try.
      Thank you very much for your quick reply!

    • @94089463
      @94089463 3 ปีที่แล้ว

      @Soy Orbison Well thought.
      Thank you, Soy.

  • @chrisl8073
    @chrisl8073 2 ปีที่แล้ว +2

    Hi Tim, could you comment on how to progress a reasonably large, business critical WebForms project to adopt more modern web UI technology(ies), without re-writing the entire thing (which can't happen)? I have been tasked with looking at this, and am looking at going down the line of adopting MVC within the same website to start to migrate towards a 'better', more testable, better performing (for the new features) and more structured solution that can co-exist with the existing WebForms. I'd love to use Blazor Server and have played with this a bit, but I don't see how that could be made to work in this context. Any thoughts or comments from you or anyone with any experience of this very much appreciated.
    Thanks for what you do BTW, I have returned to IT after a mid-life venture into something totally different, and have found myself watching a lot of your videos.

  • @X400DYL
    @X400DYL 3 ปีที่แล้ว

    Thanks for the Vid, great as always, I'm sure a while back I saw a video of Blazer Server and Webassemby in the same solution, would this give you the offline support and also PWA? is is something to consider, or not much benefit?

  • @trxe420
    @trxe420 3 ปีที่แล้ว

    Just what I needed, looking at porting /g an Angular app to a Microsoft web project. Looks like I will go a mix of Blazor and Api, just not sure if I want to do WebAssembly or Server. Can they be mixed? Is there even a use case for that?

  • @DamianWalczak
    @DamianWalczak 3 ปีที่แล้ว +2

    is this Herman Miller Aeron with the headrest attached behind You?

  • @ibrahimhussain3248
    @ibrahimhussain3248 3 ปีที่แล้ว

    Awesome analogy there Tim :)

  • @theodoredariotis7226
    @theodoredariotis7226 3 ปีที่แล้ว

    Very educational, suscribed.

  • @portiseremacunix
    @portiseremacunix 2 ปีที่แล้ว

    I will learn a bit more on Blazor, haha!

  • @wilsono2940
    @wilsono2940 3 ปีที่แล้ว

    I really loved this show!

  • @czeysy
    @czeysy 3 ปีที่แล้ว +2

    Hey Tim! Thanks again!
    I have a question recently I've started integrating Blazor components to an Existing Razor Pages application and I've found it a bit tricky to configure layouts and use Razor View methods from inside the components, did you have any experience of this kind?

  • @karthikc8230
    @karthikc8230 3 ปีที่แล้ว +1

    Great job. One video, introduces the five type of projects.
    As I have go through most of the video, I have one suggestion. It is good to have, some text animation along with the video. Especially when you are explaining about the n-categories (topic like this), if we missed something where are in middle, then the text may guide us. Thank you.

  • @stephenwalker4989
    @stephenwalker4989 3 ปีที่แล้ว

    Is there a project so I can use a .net language to target a wasm file (and ideally the js hooks) to use as an alternate to things like assembly script?

  • @brunogeorgeangoistavares8045
    @brunogeorgeangoistavares8045 2 ปีที่แล้ว

    What technology do you use in your website and why?

    • @IAmTimCorey
      @IAmTimCorey  2 ปีที่แล้ว +1

      It depends on which part. For my courses, the site is currently hosted by Teachable (since they host my courses). However, we are working on building a separate website from Teachable and hope to release it later this summer. That version will be just HTML and CSS. The C# Mastercourse landing page ( www.csharpmastercourse.com/ ) is just HTML and CSS. For the suggestion site ( suggestions.iamtimcorey.com/ ), I wrote that in C# with Blazor Server as the front-end. For another upcoming site, I'm going to be using Razor Pages. For a still further site, I'll probably use Blazor WebAssembly and API. Each solution is determined by the specific situation and problem I need to solve.

  • @allthecommonsense
    @allthecommonsense 3 ปีที่แล้ว

    When you compare & contrast Blazor Server vs. Blazor WebAssembly... you seem to imply that the latter requires an API to function but the former does not. Am I crazy, or wouldn't we *still* create an API as a "middleware" layer even for a *production* Blazor Server app?

    • @IAmTimCorey
      @IAmTimCorey  3 ปีที่แล้ว +2

      The difference is required vs optional. In Blazor WebAssembly, you have no option but to use an API if you want to access a secure database. With Blazor Server, you CAN use an API but you can also connect to a SQL database using just a class library (or even "directly") just like any other server-side ASP.NET Core project (like Razor Pages, MVC, and even API). As for what we would do, it depends on the situation. An API adds significant overhead. You have to identify if the additional overhead is justified and offset by other factors.

    • @allthecommonsense
      @allthecommonsense 3 ปีที่แล้ว

      @@IAmTimCorey yep I guess when I said "production" I was implying the tendency for any real product (FB, IG, banks, etc.) to have both a web and mobile app client. I think that makes the API "required" for any real customer-facing business that wants to provide a mobile app experience.

  • @TomRaf
    @TomRaf 3 ปีที่แล้ว

    Nice explanation, thanks a lot!

  • @timothymalahy7880
    @timothymalahy7880 2 ปีที่แล้ว

    Does blazor server require fulltime internet connection?
    Could a user load a page on internet, input what they need while offline, and then press 'submit' after they have internet?

    • @IAmTimCorey
      @IAmTimCorey  2 ปีที่แล้ว

      Yes, it requires a full-time connection (SignalR is a WebSocket connection). If you want offline access, you can use Blazor WebAssembly, which can do that as a Progressive Web Application (PWA).

  • @Dixie233
    @Dixie233 3 ปีที่แล้ว

    Hi Tim, just reading the description of this video i noticed it's the same as your video: "Is The Cloud Safe? Isn't My Data Safer Locally vs In Azure/AWS?" . Is it possible this has been mixed up somehow?
    As always love your video's and thanks for the awesome content!