DEPENDENCY INJECTION in ASP.NET Core | Getting Started With ASP.NET Core Series

SdĂ­let
VloĆŸit
  • čas pƙidĂĄn 4. 08. 2020
  • Hey Friends, I am back with another video in the ASP NET Core Series. ASP NET Core provides a built-in service container, IServiceProvider. Services are registered in the app's Startup.ConfigureServices method. The framework takes the responsibility of creating and managing the lifetime of the dependency object.
    In this video, we will learn more about the default Dependency Injection container shipped with ASP NET Core and how to use it for managing dependencies. I will walk through the different ways of registering services to the container, understand more about the lifetime scopes in the container. I will show the differences between Transient, Scoped, and Singleton lifetime scopes and how to register and use them in the application.
    🔗Dependency Injection- docs.microsoft.com/en-us/aspn...
    📕Book: Dependency Injection Principles, Practices, and Patterns - amzn.to/2C5XNQM
    Come say hi! ✋
    🌍 Blog - rahulpnath.com/
    ✉ Subscribe to my Newsletter - www.rahulpnath.com/subscribe
    🐩Twitter - / rahulpnath
    📾Instagram - / rahulpnath
    đŸŽ„ Recording Setup and Workflow - www.rahulpnath.com/blog/youtu...
    Make sure to SUBSCRIBE to the channel. THANK YOU for helping me grow this channel !!
  • Jak na to + styl

Komentáƙe • 168

  • @RahulNath
    @RahulNath  Pƙed 3 lety +10

    Source Code - rahulpnath.visualstudio.com/DefaultCollection/CZcams%20Samples/_git/dependencyinjection

  • @shivamsoni6728
    @shivamsoni6728 Pƙed 3 lety +3

    One of the best tutorial for Dependency injection.
    No fun , only serious learnings across the video.

    • @RahulNath
      @RahulNath  Pƙed 3 lety

      Thank you Shivam and happy you found it useful

  • @siddharth3837
    @siddharth3837 Pƙed 2 lety +1

    I like that you covered small details while explaining a concept. --- Give this man a raise (Obama pointing finger).

    • @RahulNath
      @RahulNath  Pƙed 2 lety

      Thank you Siddharth. Hope you are enjoying the series bit.ly/asp-net-core-series

  • @arunsatyarth9097
    @arunsatyarth9097 Pƙed 3 lety +20

    You are the best teacher. You should consider making a Pluralsight or Udemy course.

    • @RahulNath
      @RahulNath  Pƙed 3 lety +4

      Thank you Arun. It means a lot and sure yes I am considering making a course too. Thanks again for your support!

    • @shubhamkoolwal139
      @shubhamkoolwal139 Pƙed 3 lety +1

      @arun satyarth completely agree with you

    • @mvdlele29
      @mvdlele29 Pƙed 2 lety +2

      no.. stay here..there we need to pay

  • @ahmedbasha4174
    @ahmedbasha4174 Pƙed 3 lety +5

    Amazing work, so far it's the best explanation for Dependency Injection.

    • @RahulNath
      @RahulNath  Pƙed 3 lety +2

      That's so nice. Glad you found it useful Ahmed.

  • @samstring6827
    @samstring6827 Pƙed 2 lety +1

    Yours is the best channel to learn asp.net from, in the whole CZcams. Keep it up. Thanks.

    • @RahulNath
      @RahulNath  Pƙed 2 lety

      Wow, that made my day Sam! 😍 Thank you and happy you are liking it

  • @jmsatheesh1
    @jmsatheesh1 Pƙed 3 lety

    You are amazing man. No one else explained this in easy and understandable way

    • @RahulNath
      @RahulNath  Pƙed 3 lety +2

      Glad to hear that Satheesh 😀 You will definitely like other videos in this series then czcams.com/play/PL59L9XrzUa-nqfCHIKazYMFRKapPNI4sP.html
      Do check them out and let me know. Also let know if you want any particular topics covered.

  • @preetamjakhmola7521
    @preetamjakhmola7521 Pƙed 3 lety +2

    A video with 0 dislikes. nice thanks

    • @RahulNath
      @RahulNath  Pƙed 3 lety

      Thank you Preetam. Happy you liked it😀

  • @sidhantverma
    @sidhantverma Pƙed 2 lety

    Pure Gold Content. Thanks a lot man for all of the great content you make.

    • @RahulNath
      @RahulNath  Pƙed 2 lety

      My pleasure Sidhant! The full series is here in case you haven't seen czcams.com/play/PL59L9XrzUa-nqfCHIKazYMFRKapPNI4sP.html

  • @alfullard8887
    @alfullard8887 Pƙed 3 lety +2

    As always.. brilliant content with a great explanation. Thanks.

    • @RahulNath
      @RahulNath  Pƙed 3 lety

      Awesome thank you! Glad you found it useful 😀

  • @anthonypark9158
    @anthonypark9158 Pƙed 2 lety +6

    The best. I really really appreciate your clear explanation. I'm sure this channel is going to get much bigger. Thank you

  • @dotnetdeveloper288
    @dotnetdeveloper288 Pƙed 3 lety

    The best example of DI lifetime I ever see. Great Job....

  • @ruralsoftwareengineer3435
    @ruralsoftwareengineer3435 Pƙed 3 lety +1

    Superb. Clear explanation . Thanks for the details explananation

    • @RahulNath
      @RahulNath  Pƙed 3 lety

      So happy these are helpful Balaji and thank you for letting know 😀

  • @starman9000
    @starman9000 Pƙed 3 lety +2

    Rahul, Thanks for detailed insight on DI!!

  • @samitkrghosh4388
    @samitkrghosh4388 Pƙed 2 lety

    Your really a good teacher I have ever seen in youtube channel . simplly you r great 👍👍

    • @RahulNath
      @RahulNath  Pƙed 2 lety

      So nice of you and thank you Samit! The full ASP NET Series is available here bit.ly/asp-net-core-series
      Do let me know if you have any topic suggestions or feedback

  • @amitlizza
    @amitlizza Pƙed rokem

    Very Precise, Simple and easy to understand .. really liked it.

    • @RahulNath
      @RahulNath  Pƙed rokem

      Thank you Amit! Do check out the full series bit.ly/asp-net-core-series

  • @RyantheCanuckpirate
    @RyantheCanuckpirate Pƙed rokem

    Thank you for including a book recommendation for those who want to take a deep dive - I'm always looking for recommendations on resources and people are hesitant to make recommendations they don't personally directly benefit from

    • @RahulNath
      @RahulNath  Pƙed rokem

      Glad to hear that and thank you for letting me know. I do have some general book recommendation over at my blog (that has helped me as a dev)
      www.rahulpnath.com/blog/language-agnostic-books-for-every-developer/
      www.rahulpnath.com/blog/language-agnostic-books-for-every-developer-2/
      Hope you find them useful too!

  • @igorlira7330
    @igorlira7330 Pƙed 2 lety +1

    This is just amazing, thank you very much!

  • @thomasmunguya2207
    @thomasmunguya2207 Pƙed 2 lety +1

    You explain so well. I'm glad I stumbled upon your channel. Keep it up.

    • @RahulNath
      @RahulNath  Pƙed 2 lety +1

      Thank you Thomas and welcome to the channel. For ASP NET do check out my series czcams.com/play/PL59L9XrzUa-nqfCHIKazYMFRKapPNI4sP.html
      Do let me know if there are specific areas that you would like to be covered.

  • @volodyakachalka5187
    @volodyakachalka5187 Pƙed rokem

    You're great teacher, greetings from Poland :)

    • @RahulNath
      @RahulNath  Pƙed rokem

      Thank you Volodya. Happy you find it useful. Hope you are liking the series czcams.com/play/PL59L9XrzUa-nqfCHIKazYMFRKapPNI4sP.html

  • @pradipmanna6371
    @pradipmanna6371 Pƙed 3 lety +2

    Excellent. Thank you Rahul.

  • @ashamarias
    @ashamarias Pƙed 3 lety +2

    Great video, explanation and examples :)

  • @islamAhmed-il6pt
    @islamAhmed-il6pt Pƙed rokem +1

    Great Tutorials and awesome channel thanks Rahul it helps me a lot

  • @chetansn6
    @chetansn6 Pƙed rokem

    Good job, detailed explanation which helps in realtime development.

    • @RahulNath
      @RahulNath  Pƙed rokem

      Glad it was helpful! Do check out the full series here bit.ly/asp-net-core-series

  • @pkapilsrisai4737
    @pkapilsrisai4737 Pƙed 2 lety

    Love the way you explain.....

    • @RahulNath
      @RahulNath  Pƙed 2 lety +1

      Thanks a lot 😊The full series is there in case you haven't come across it bit.ly/asp-net-core-series

  • @ezhisaivallabanr3189
    @ezhisaivallabanr3189 Pƙed 2 lety +1

    Thanks for clear explanation

    • @RahulNath
      @RahulNath  Pƙed 2 lety

      You are welcome and do check out the full series here bit.ly/asp-net-core-series

  • @antarikshverma8999
    @antarikshverma8999 Pƙed 2 lety +1

    Thank you for great videos Rahul !

  • @DP-mo9gi
    @DP-mo9gi Pƙed rokem

    I've no words to explain how good You explain a Complicated concept this much Easily, your channel is going to be very big in the future, All the best Sir. Love from INDIA ♄♄♄.

    • @RahulNath
      @RahulNath  Pƙed rokem +1

      Thanks a lot! Hope you are enjoying the full series here bit.ly/asp-net-core-series

  • @juhairahamed5342
    @juhairahamed5342 Pƙed 2 lety +1

    Thanks again for good explanation

    • @RahulNath
      @RahulNath  Pƙed 2 lety

      Always welcome. You might like the other videos in this series too bit.ly/asp-net-core-series

  • @keithmar5996
    @keithmar5996 Pƙed 2 lety

    Nice job. You're a great explainer.

    • @RahulNath
      @RahulNath  Pƙed 2 lety

      Thank you Keith!! Do check out the full series here bit.ly/aws-net-series
      I'm sure you will like them 😀

  • @vinodcd
    @vinodcd Pƙed 3 lety +1

    Very good explanation!!

  • @sree7986
    @sree7986 Pƙed 2 lety

    nice explanation Rahul, i really liked the diagram showing the lifetimes

    • @RahulNath
      @RahulNath  Pƙed 2 lety

      Happy you liked it and found it useful.

  • @centrilla1169
    @centrilla1169 Pƙed 2 lety

    This is a gem...

    • @RahulNath
      @RahulNath  Pƙed 2 lety +1

      Happy to hear that ! Do check out the full series here bit.ly/asp-net-core-series
      Do let know in case you get to watch any of it 😀

  • @saturninramirez1107
    @saturninramirez1107 Pƙed 2 lety +1

    very good explications , thanks

    • @RahulNath
      @RahulNath  Pƙed 2 lety

      Glad it was helpful! The full series is here bit.ly/asp-net-core-series

  • @boggybayouboy
    @boggybayouboy Pƙed 2 lety

    This is great!

  • @rangerpedia3057
    @rangerpedia3057 Pƙed 2 lety

    Awesome sir👍

    • @RahulNath
      @RahulNath  Pƙed 2 lety

      Thank you Ranger. Do checkout my ASP NET Core Series here czcams.com/play/PL59L9XrzUa-nqfCHIKazYMFRKapPNI4sP.html
      I'm sure you'll like it. And call me Rahul 😀

  • @IndiaThatIsBhaarat
    @IndiaThatIsBhaarat Pƙed 3 lety +2

    Good one!!

  • @raghavambashta4564
    @raghavambashta4564 Pƙed 19 dny

    Super Explanation

    • @RahulNath
      @RahulNath  Pƙed 16 dny

      Glad you liked it Raghav! Hope you are enjoying the series bit.ly/asp-net-core-series

  • @srinivasrapaka4729
    @srinivasrapaka4729 Pƙed 11 měsĂ­ci

    Nice Explanation bro.to make 15:15 the compiler happy :)

    • @RahulNath
      @RahulNath  Pƙed 11 měsĂ­ci

      Glad you liked it! Hope you are enjoying the series bit.ly/asp-net-core-series

  • @TheMrjuanblack
    @TheMrjuanblack Pƙed 2 lety

    Ah man, I have to ruin the 420 like count because you deserve one more like. Great video!

    • @RahulNath
      @RahulNath  Pƙed 2 lety +1

      Glad you liked it Juan! Do check out the full series here if you haven't already bit.ly/asp-net-core-series

    • @TheMrjuanblack
      @TheMrjuanblack Pƙed 2 lety +1

      @@RahulNath Will do!

  • @netscapeinthewood3345
    @netscapeinthewood3345 Pƙed 2 lety +1

    Thanks 😎

    • @RahulNath
      @RahulNath  Pƙed 2 lety

      Welcome 😊Do check out the full series if you haven't already bit.ly/asp-net-core-series

  • @anurag3487
    @anurag3487 Pƙed 3 lety +1

    crisp and clear explanations Rahul, thank you. What are we trying to achieve by ISingletonInstance in the video?

    • @RahulNath
      @RahulNath  Pƙed 3 lety +1

      Mostly to demo the different lifetime scopes. Just to make aware of them. It's rarely I've had to use Singleton lifetime scope.

    • @anurag3487
      @anurag3487 Pƙed 3 lety +1

      @@RahulNath thank you. Yes scoped is what I have used mostly.

  • @sakathvenu
    @sakathvenu Pƙed 3 lety

    Gold!

  • @Blr046
    @Blr046 Pƙed 2 lety +1

    I really appreciate your work. Thank you so much for sharing your knowledge. I am currently using Visual Studio 2022. Lot of things changed, there is no startup.cs. Would it be possible to update your videos for Visual Studio 2022 ?

    • @RahulNath
      @RahulNath  Pƙed 2 lety

      You're very welcome! Yes already on it - Been a bit away from CZcams, will be back soon!

  • @thinklive678
    @thinklive678 Pƙed 3 lety +2

    Hey Rahul,
    Could you please make video in which existing asp.net core application move from http to https for all environment.
    Many Thanks for your help in Advance.

    • @RahulNath
      @RahulNath  Pƙed 3 lety

      Hey Ravi, This would have little changes on the ASP Net side itself and more on how you and where you are hosting, what certificates you are using, etc. Can you provide more details on what issue you are facing?

    • @thinklive678
      @thinklive678 Pƙed 3 lety

      @@RahulNath I need set path for self signed certificate for dev and higher environment where I am facing issue also in the configure and configureService method code change for https. If you can guide me there or any link or pdf is there then it would be highly appreciated.

  • @anupchandran
    @anupchandran Pƙed 2 lety

    Thank you :)

    • @RahulNath
      @RahulNath  Pƙed 2 lety

      You're welcome Anup! Hope you are enjoying the series

  • @RoySourav
    @RoySourav Pƙed 2 lety

    awesome

    • @RahulNath
      @RahulNath  Pƙed 2 lety

      Thank you Sourav and glad you like it. Happy you are checking out the other videos. Do let me know if you have any specific topic suggestions to be covered.

  • @deivamanidhandabani9505
    @deivamanidhandabani9505 Pƙed 2 lety +1

    Good explanation Thanks Rahul.

    • @RahulNath
      @RahulNath  Pƙed 2 lety +1

      Happy you found it useful - Do check out the full series in case you haven't already bit.ly/asp-net-core-series

    • @deivamanidhandabani9505
      @deivamanidhandabani9505 Pƙed 2 lety +1

      @@RahulNath sure Rahul thanks

  • @leanhxuan4931
    @leanhxuan4931 Pƙed rokem

    Hello Rahul, I eally appreciate your clear explanation but have a question: After override IFunctionsHostBuilder at startup; When I call azure function from client side with url and appkey then function fails with error message like this: Microsoft.AspNetCore.Authentication.Core: No authentication handlers are registered. Did you forget to call AddAuthentication().Add[SomeAuthHandler]("WebJobsAuthLevel",...)?. Please help me know how the way to fix this trouble.

  • @deivamanidhandabani9505
    @deivamanidhandabani9505 Pƙed 2 lety +1

    Please post the video for SOLID principles with the real time scenarios implementation
    Specifically Open/Closed and Liskov Substitution Principle

  • @kiranshetty4316
    @kiranshetty4316 Pƙed 3 lety +1

    Rahul , Thanks for the Video . I have one request Can you pls explain with Video Why DBContext LIfetime is Scoped Bydefault why not they made it with Transient or Singleton And what happens if doing so .

    • @RahulNath
      @RahulNath  Pƙed 3 lety +1

      Thanks again Kiran and happy this helps. With web applications since you want the updates the updates to be isolated to your each of the request that comes in, it helps DBContext being Scoped. If they are SIngleton you can end up updating same objects from multiple threads etc. Let know if that helps.

  • @user-ic4rq1jp1o
    @user-ic4rq1jp1o Pƙed 4 měsĂ­ci

    That’s Gold đŸ€©

    • @RahulNath
      @RahulNath  Pƙed 4 měsĂ­ci +1

      Glad you liked it. Do check out the full series bit.ly/asp-net-core-series

    • @user-ic4rq1jp1o
      @user-ic4rq1jp1o Pƙed 4 měsĂ­ci

      @@RahulNath Surely I’m following it. I am an experienced frontend developer having some nestjs backend experience but want to move to full time backend development and would love to use C# for that to get into enterprise level tech and your series is really helpful in understand dotnet concepts.

    • @RahulNath
      @RahulNath  Pƙed 4 měsĂ­ci

      @@user-ic4rq1jp1o Glad to hear that. Do let know if you have any questions or topic suggestions.

  • @Lunolux
    @Lunolux Pƙed rokem +1

    nice

    • @RahulNath
      @RahulNath  Pƙed rokem

      Hope you are enjoying the full series bit.ly/asp-net-core-series

  • @rohan4rich
    @rohan4rich Pƙed 3 lety +2

    Hello Rahul Sir, I have one question can we use service singleton instance in any other class (other than controller) , for example I have ValueController - BusinessOperation class(custom logic) - database operation class and here I have to create Singleton service instance of Database operation class and use it in BusinessOperation class .

    • @RahulNath
      @RahulNath  Pƙed 3 lety

      Yes you can inject Singleton to other than controller. Make a class singleton only if absolutely required.

  • @patrickmullen5167
    @patrickmullen5167 Pƙed 2 lety +1

    Great video 👍

    • @RahulNath
      @RahulNath  Pƙed 2 lety +1

      Thank you for watching other videos in this series and leaving back a comment! Hope you like the rest too and more to come 😀

    • @patrickmullen5167
      @patrickmullen5167 Pƙed 2 lety

      @@RahulNath your videos are the right level of concise and detailed, and always clear. I’ve watched a few, and look forward to watching more. Best wishes 😊

    • @RahulNath
      @RahulNath  Pƙed 2 lety +1

      @@patrickmullen5167 Thank you! 😀

  • @pradipmanna6371
    @pradipmanna6371 Pƙed 3 lety +1

    Hi, sorry if the question is silly. I want to use a value from an injected dependency, say using IConfiguration I want to retrieve a config value in a static class / static property. Is that really possible? Actually, I want to create a 'GlobalHelper' to store all required static vars and make them available to every resource that needs it. Thanks.

    • @RahulNath
      @RahulNath  Pƙed 3 lety +1

      Not sure why you want it as a static class/property. To use configuration values you can use the Options Pattern. Learn more about it and how to use it here -czcams.com/video/SizJCLcjbOA/video.html
      Let know if that helps solve your problem. If not kindly detail out the problem you are trying to solve (not the how) and I can try help.

    • @pradipmanna6371
      @pradipmanna6371 Pƙed 3 lety +1

      Okay, thank you.

  • @NK-xw4uu
    @NK-xw4uu Pƙed 2 lety

    Every request to the controller will result in creation of new DependencyService1 and DependencyService2 objects because they are registered as Transient. However within the DependencyService1/2 code you have used various types of IOperations (registered as transient/scoped/singleton). In the case of scoped and singleton, how does the program ensure that within every new instance of DependencyService1/2 you get same instance of scoped (in the single request) and same instance of singleton (across all requests)? Is this the functionality of the DI container's internal implementation? Also, is this an example of multilevel DI that you have shown? Level 1 is the DependencyService1/2 and Level 2 is the Operation.

    • @RahulNath
      @RahulNath  Pƙed 2 lety

      Hey Nachiket, The examples shows are purely for representational purposes. Is there a real world example/issue that you are facing? If you provide more details on what you are trying to solve I could try and help.

  • @callegarip
    @callegarip Pƙed 3 lety +1

    Once again, what a wonderful teacher you are man. Thank you for all your videos.
    I have a question, so let's say in a multi layer application, what is the best way of passing information from the Web Api controllers to the other layers, such as BLL or DAL? I now know how to inject dependencies to my controllers in the API project (thank you again). Now, I want to pass/inject the logged User information from the API to my BLL project and I am wondering if there is a best way to do this. At the moment I have a UserDTO class and fill this object in the same api controller then pass it to down to my BLL layer. How would you handle it?

    • @RahulNath
      @RahulNath  Pƙed 3 lety

      Glad you are finding these useful Victor!
      Did you get a chance to watch this video? czcams.com/video/XE1w52pNYr8/video.html
      Even though the solution used is a AWS template, much of the patterns(using Mediatr + Commands/Query) is what I usually use for the applications I built. Majority of the time I see this working well.
      When passing the information from the host application (in this case API host) I pass the information via the Command/Query object. Is this something that fits into your model?

    • @callegarip
      @callegarip Pƙed 3 lety

      @@RahulNath I just watched it. I don’t think it will fit. My application is multi layer but does not need all of this. Really all I was asking is how to pass information down to the business layer as parameters. I have a react application where I login with a user and this user context information is only available in the api because I can use the httpcontext. The BLL and DAL layer cannot Accra to the httpcontext. So what I was asking is what is the best way to pass the user information down to those layers. Right now I have to instantiate my UserDTO and fill the object on every api controller so I can send that object down to the other layers as a parameter in order to user the user information. This works for me but I feel like I am not doing this the right way.

    • @RahulNath
      @RahulNath  Pƙed 3 lety +1

      ​@@callegarip Sorry Victor, missed out on replying earlier. One pattern I can immediately think of is to have a interface defined in Domain Layer (IUserContext), keep this at a request scope in DependencyInjection and set up the content details required from inside your API layer, possibly in a middleware, so that every request will have this auto-populated. You could expose a SetContext method on the interface and use it in the middleware. Anywhere you need the context you can then inject in the IUserContext and retrieve the values from there. So then you don't have to explicitly pass it along with each function call parameter. Let me know if that makes sense. I will think more about this and possibly do a video around this.

    • @callegarip
      @callegarip Pƙed 3 lety +1

      @@RahulNath thank you. Yeah that sounds something I can do. Anyways, a video about this would be much appreciated. 😊

    • @RahulNath
      @RahulNath  Pƙed 3 lety +1

      @@callegarip Sure I will add it to my list. Let me know how it goes in case you get to give this a try. Also do drop in if you have other topic suggestions here czcams.com/users/postUgzvsuKE7KLhPaMzCMN4AaABCQ

  • @AkashTripathi5
    @AkashTripathi5 Pƙed rokem

    Hi Rahul, how can we Inject parameterized constructor using dependency injection?

    • @RahulNath
      @RahulNath  Pƙed rokem

      Are you looking for some thing like this docs.autofac.org/en/latest/register/parameters.html? I think it's not supported with default DI. Check out some guidelines here on Default service container replacement docs.microsoft.com/en-us/dotnet/core/extensions/dependency-injection-guidelines?WT.mc_id=AZ-MVP-5003875#default-service-container-replacement

  • @aaroncastanos4549
    @aaroncastanos4549 Pƙed 2 lety +1

    now i can start

  • @srikanthek737
    @srikanthek737 Pƙed 2 lety

    Thanks for the video, i have a question, say i have a class library without any startups.cs or program.cs , is it possible to implement dependency injection without startup.cs or program.cs ?

    • @RahulNath
      @RahulNath  Pƙed 2 lety +1

      Thank you. Is it a reusable/shared DLL that you are creating? I prefer having the host application dictate the DI framework rather than a DLL forcing to use a specific one. If you provide more details on your use case maybe I can help more.

    • @srikanthek737
      @srikanthek737 Pƙed 2 lety

      @@RahulNath its a reusable DLL, shared across different applications, i cannot add host files or program.cs

    • @RahulNath
      @RahulNath  Pƙed 2 lety

      @@srikanthek737 It's better to have a readme/doc for the DLL showing how to register the classes in it. You could add extension methods for it too (preferably in a separate DLL). If you look at any .NET libraries out there they follow a similar pattern. Hope that helps.

    • @srikanthek737
      @srikanthek737 Pƙed 2 lety

      @@RahulNath actually i was wondering is that possible to implement dependency Injection just within DLL library without any startup.cs or program.cs.
      If possible can you please create one such video which might helps many people

    • @RahulNath
      @RahulNath  Pƙed 2 lety

      @@srikanthek737 It will be up to the host to inject the dependencies to the DLL since that will be the context in which your DLL will be used. As long as you are injecting in the dependencies via the constructor, why do you want DI in your DLL?

  • @deivamanidhandabani9505
    @deivamanidhandabani9505 Pƙed 2 lety

    Could you please explain the scenarios when should use Azure Web Jobs Vs Azure Functions Vs Logic Apps
    and need the scenario to use Azure Service bus Queues and Topics
    Please advise.

    • @RahulNath
      @RahulNath  Pƙed 2 lety +1

      This is a good article that covers some of those questions docs.microsoft.com/en-us/azure/azure-functions/functions-compare-logic-apps-ms-flow-webjobs?WT.mc_id=AZ-MVP-5003875

    • @deivamanidhandabani9505
      @deivamanidhandabani9505 Pƙed 2 lety

      @@RahulNath Thanks Rahul 😊

  • @muhammadayazmehmoodabdulha6361

    Why we use Interfaces for dependency injection or repository patten? is there any other way to achieve this ?

    • @RahulNath
      @RahulNath  Pƙed 2 lety +1

      Mostly because with C# you can easily swap interface implementations and it helps when testing, mocking etc. With classes you are stuck with that particular implementation. It depends on what you are use cases are. Does that help? Feel free to ask if you have more questions.

    • @muhammadayazmehmoodabdulha6361
      @muhammadayazmehmoodabdulha6361 Pƙed 2 lety +1

      @@RahulNath Thanks a lot Sir, this Make sense.

    • @RahulNath
      @RahulNath  Pƙed 2 lety +1

      @@muhammadayazmehmoodabdulha6361 Perfect and you can call me Rahul 🙂

  • @thefront5871
    @thefront5871 Pƙed rokem +2

    FYI, Startup.cs is missing because it got merged into the Program.cs file. Hope that helps someone!

    • @RahulNath
      @RahulNath  Pƙed rokem +1

      Thank you for pointing it out - Yes this video was made with .NET 3.1. With .NET 6 by default, it's merged but the overall concept still remains the same.

  • @rahulsalokhe200
    @rahulsalokhe200 Pƙed 2 lety

    Hi,
    How to update ASP.Net site dll without stopping site?

    • @RahulNath
      @RahulNath  Pƙed 2 lety

      It depends - what is your current setup? How is the site hosted? If you are on Azure, easiest might be to look at deployment slots docs.microsoft.com/en-us/azure/app-service/deploy-staging-slots

  • @theyoutuber273
    @theyoutuber273 Pƙed 2 lety

    You are awsome sir! You are fucking Awsome!

  • @pritishranjan
    @pritishranjan Pƙed 3 lety +2

    What is a dependency implemented class requires a another Dependency type as a parameter..as Guid simple..what is a dependency requires a dependency type as a parameter

    • @RahulNath
      @RahulNath  Pƙed 3 lety +1

      The DependencyService1 (and 2) takes in other dependencies via it's constructor - rahulpnath.visualstudio.com/DefaultCollection/CZcams%20Samples/_git/dependencyinjection?path=%2FDependencyService1.cs
      Also, the Operation class takes in a Guid parameter which we saw (12:15) in the SingletonInstance case being injected in using the factory constructed method.
      If you are looking to inject in config like values you can also use the Options pattern - docs.microsoft.com/en-us/aspnet/core/fundamentals/configuration/options?view=aspnetcore-3.1
      All dependencies need not be injected in via the constructor, you can also see if it makes more sense to pass it as a function parameter when using the object.
      Let me know if that helps. If not please give more details about your scenario and I am happy to provide more details.

    • @pritishranjan
      @pritishranjan Pƙed 3 lety +2

      @@RahulNath Thanks for the response...I find ur videos well explained...keep making ...as I am a beginner and moving from .NET to .NET Core..thanks

    • @RahulNath
      @RahulNath  Pƙed 3 lety +1

      @@pritishranjan Awesome thanks. Do let know if you want any particular topics covered.

    • @pritishranjan
      @pritishranjan Pƙed 3 lety

      @@RahulNath ya .. please consider these topics for videos
      1.Repository Pattern with EF Core
      2.Extending , Configuring, and Modifying ASP.NET Identity for auth
      3.Adding Razor pages to a Existing ASP.NET Core web project
      4.How to keep good relations between Model, ViewModel and DTOs

    • @RahulNath
      @RahulNath  Pƙed 3 lety +1

      Pritish Ranjan Noted thanks!

  • @ryanleemartin7758
    @ryanleemartin7758 Pƙed rokem +1

    I appreciate this video but man do I hate how .net does this stuff. My eyes glaze over at all this ServiceProvider, ServiceCollection, IOperation... stuff. I hate it so much lol

  • @zeeshanbage4267
    @zeeshanbage4267 Pƙed 2 lety

    why I did not found you earlier. Making my interview preparation easy with each video. Great explanation not just this video but all.

    • @RahulNath
      @RahulNath  Pƙed 2 lety +1

      Glad you like it Zeeshan. Good luck with your interviews!

    • @zeeshanbage4267
      @zeeshanbage4267 Pƙed 2 lety

      I had interview with thoughtworks this week.. explained them dependency injection and middle were for 15 to 20 mins.. start-up class also..got cleared that round waiting for final round now. Thank you

    • @RahulNath
      @RahulNath  Pƙed 2 lety +1

      @@zeeshanbage4267 Great to hear that Zeeshan. Good luck and do let me know how that goes.