ASP.NET Core Web API - 5. Repository Pattern & Dependency Injection Explained

Поделиться
HTML-код
  • Опубликовано: 14 авг 2024
  • ХоббиХобби

Комментарии • 65

  • @macctosh
    @macctosh Год назад +15

    for larger projects its Controller -> Services -> Repositories

  • @afelixalves
    @afelixalves 2 года назад +8

    Great tutorial! Nice advanced (and correct) structure made simple. With so many bad approaches to API tuturials out there, this is the one to follow! Keep the great work and thanks for sharing it...

  • @hafidazer1634
    @hafidazer1634 6 месяцев назад

    This one was abit rough but got the 'get' call working, I guess I have to watch the video few more times to understand the details and again thank you very much Teddy for taking the time to make such great content. Looking forward to the other videos of this series. God bless

    • @TeddySmithDev
      @TeddySmithDev  6 месяцев назад +3

      Yoooo thank you for your time!

  • @boopfer387
    @boopfer387 Год назад +6

    8:45 you say an ICollection is only read only - I believe you are referring to IEnumerable, ICollection you can add / remove but only to the end. IList has index so edit anyplace.

    • @TeddySmithDev
      @TeddySmithDev  Год назад +4

      Did not know that. Thank you for commenting.

  • @bozios4663
    @bozios4663 16 дней назад

    For everyone that had swagger freez but end point was working check if "[ProducesResponseType(200,Type = typeof(IEnumerable))]" is correct

  • @FoxFireImr
    @FoxFireImr 2 года назад +1

    Thank you, you're really darn great. I look forward to seeing the rest of your videos :)

  • @SamuelFatunmbi
    @SamuelFatunmbi 9 месяцев назад

    Thank you very very much, Teddy. I love the way you teach.

  • @abdulmlaikalomayri727
    @abdulmlaikalomayri727 Год назад

    As always great videos from teddy smith. Thank you so much.

  • @josephh8117
    @josephh8117 5 месяцев назад

    good explanation of decoupled code. thanks t

  • @lofto8363
    @lofto8363 11 месяцев назад +1

    i don't know what i am doing, but im lovin it

  • @monat_son
    @monat_son Год назад

    thanks Teddy, quality content!

  • @tilmandr7415
    @tilmandr7415 8 месяцев назад

    Hey Teddy,
    thank you so much for this Tutorial. As an Software Developer that is familiar with the basic concepts of things like DI etc. it is easy to follow. I could imagine, that it could be hard to follow, if you dont have that background knowledge. Maybe you could link Videos that go a little deeper in that concepts in the sections. :)
    Greets Tilman

    • @TeddySmithDev
      @TeddySmithDev  8 месяцев назад +2

      I made new blog posts on the topic, but my next course that I’m releasing will explain these topics better. Thanks for watching!

  • @moviesexplainermarathi6753
    @moviesexplainermarathi6753 4 месяца назад

    Love your videos brother

  • @raggardy
    @raggardy 2 года назад +3

    Hi Teddy. With IEnumerable and ICollection, can you use either or is it convention to use one and stick with it? Cheers

    • @TeddySmithDev
      @TeddySmithDev  2 года назад +6

      Use IEnumerable when you need to filter data. ICollection has more features like .length and CRUD actions.

  • @kaydenangel3742
    @kaydenangel3742 2 года назад

    Heish man you are the best👏👏

  • @leafmagi2796
    @leafmagi2796 2 года назад +1

    you really care the plural form of pokemon! Actually the full name is pocket monster, maybe the plural form is pokcet monsters :D

    • @TeddySmithDev
      @TeddySmithDev  2 года назад +5

      The official Pokémon master has spoken.

  • @eihabelbrgaty8909
    @eihabelbrgaty8909 Год назад +1

    Hi Teddy Million thanks for this tutorials ... I stack with ModelState Error does not exist in the current context

    • @yugant
      @yugant Год назад +3

      i was stuck at the same issue . Your controller needs to inherit from ApiController (or Controller) . public class PokemonController : ControllerBase

    • @supa_space
      @supa_space 11 месяцев назад +1

      @@yugant
      Thank you for this tip, I was stuck here for hours😂

  • @user-bp7wn8el2j
    @user-bp7wn8el2j Год назад

    it's really great !

  • @oanaghicajanucristina
    @oanaghicajanucristina 11 месяцев назад

    great videos! Liked and subscribed, but i have a question. Why did you use mapper? why you did not use logger? and why you didn't use service classes?

    • @TeddySmithDev
      @TeddySmithDev  11 месяцев назад +3

      I’ve always found that going the extra and creating your own mappers can save time because you never have to debug them and can always easily change to meet needs

  • @kirillzlobin7135
    @kirillzlobin7135 6 месяцев назад

    10:37 IMPORTANT INFO. Services explained

  • @patoledavid
    @patoledavid 5 месяцев назад

    Hi Teddy, I'm trying this video today and I'm getting a 404 Undocumented Error: Not Found in the place where you see the all the Pokemon. All other server responses look to be correct. Would you have an idea on where I could be going wrong? Thanks in advance!

  • @MuhammadZharifMohdFuad
    @MuhammadZharifMohdFuad 5 месяцев назад

    Hi Sir, I am getting this error.
    System.AggregateException: 'Some services are not able to be constructed (Error while validating the service descriptor 'ServiceType: WebAPI.Interfaces.IOrderHeaderRepository Lifetime: Scoped ImplementationType: WebAPI.Repository.OrderHeaderRepository': Unable to resolve service for type 'WebAPI.Data.DataContext' while attempting to activate 'WebAPI.Repository.OrderHeaderRepository'.)'
    Please help

  • @parthsavliya4441
    @parthsavliya4441 2 года назад +1

    God !

  • @etiel
    @etiel 2 года назад +1

    Do you use reshaper? It's very nice when it's ghosting the completion for you

    • @TeddySmithDev
      @TeddySmithDev  2 года назад

      No but I'll check it out. Resharper is on my to do list of things to do. Thanks for suggestion.

  • @tylerb5803
    @tylerb5803 2 месяца назад

    Fun fact, if your scrolling down because it's not working when you click run. Don't forget to build your solution first.

  • @henrik3098
    @henrik3098 Год назад

    thanks man

    • @TeddySmithDev
      @TeddySmithDev  Год назад

      No prob thanks for watching and commenting 👍

  • @Raj-iz9uz
    @Raj-iz9uz Год назад

    Error : Showing in Swagger : No Operations defined in spec!

  • @AlThePal78
    @AlThePal78 Год назад

    Do you use this pattern a lot I was told .NET was a repository pattern or something like that so why do this ? what you think about that

  • @alidahud337
    @alidahud337 Год назад

    ​ @Teddy Smith Hi, if it doesn't give me the contents of the database, what should I do? it's giving me back: id: 0 articletext: "string" etc.

    • @TeddySmithDev
      @TeddySmithDev  Год назад

      That is strange. Maybe you are using method with no default ie. first() and not firstOrDefault()?

    • @alidahud337
      @alidahud337 Год назад

      @@TeddySmithDev Where?

    • @alidahud337
      @alidahud337 Год назад

      @@TeddySmithDev even though i successfully seeded some data into the DB

    • @alidahud337
      @alidahud337 Год назад

      @@TeddySmithDev I found my issue but now another error: System.FormatException: String 'FalseData Source=DESKTOP-HGUF4HF' was not recognized as a valid Boolean., Which is inside of my connection string, but this statement raises the error: return _context.qbitArticles.OrderBy(q=>q.id).ToList();

  • @omerucansu2569
    @omerucansu2569 11 месяцев назад

    Hi sir, Why don't you use the async method

    • @TeddySmithDev
      @TeddySmithDev  11 месяцев назад

      No real reason. Just didn’t add it at the time.

  • @junlapunete1602
    @junlapunete1602 Год назад

    Can I ask what font are you using?

  • @baileymorgan9986
    @baileymorgan9986 Год назад

    I am getting a CORS error when completing this video. Unsure why as I am not using CORS yet. Any ideas? I have tried multiple browsers.

    • @TeddySmithDev
      @TeddySmithDev  Год назад

      You need to turn cors off explicitly. Look at my GitHub for examples.

    • @baileymorgan9986
      @baileymorgan9986 Год назад

      @@TeddySmithDev No where in your github (for this project) do I see references to cors. I am not turning it on explicitly so I am not sure how to turn it off explicitly

  • @evilsanta8585
    @evilsanta8585 10 месяцев назад

    So youre bringing in the entire databse in. isn't that slower when the database becomes huge

    • @TeddySmithDev
      @TeddySmithDev  10 месяцев назад

      Ef Core only builds SQL queries and doesn’t really bring any data besides what you ask

  • @yusufkaandemirbas4451
    @yusufkaandemirbas4451 Год назад

    Is it an entry level course? By brain blowed up

    • @TeddySmithDev
      @TeddySmithDev  Год назад +1

      May want to check intro to C# video series on my homepage

  • @sylgeekhome
    @sylgeekhome 8 месяцев назад

    Why pokemon not called pokemons inside dbset?

    • @TeddySmithDev
      @TeddySmithDev  8 месяцев назад +1

      This is the debate of the century lmao. What is the true plural form of Pokémon??? 🤣

  • @rifathossain328
    @rifathossain328 Год назад

    i know OOP but i am getting lost here kinda confusing .

  • @Shadowplayification
    @Shadowplayification 2 года назад +1

    I'm a little late to the party, I know, but when i try to run my code, I get this Exception:
    System.InvalidOperationException: 'Action 'PokemonReviewApp.Controllers.PokemonController.GetPokemons (PokemonReviewApp)' does not have an attribute route. Action methods on controllers annotated with ApiControllerAttribute must be attribute routed.'
    What can I do to fix this?

    • @Shadowplayification
      @Shadowplayification 2 года назад

      The Exception gets thrown at app.MapControllers(); in the Program.cs class.

    • @TeddySmithDev
      @TeddySmithDev  Год назад +2

      You might need to check to see if controller annotation is in your controller code

    • @juricamihin7524
      @juricamihin7524 Год назад

      just add
      using RouteAttribute = Microsoft.AspNetCore.Mvc.RouteAttribute;