Repository pattern in asp net core

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

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

  • @vinteetatha
    @vinteetatha 5 ปีที่แล้ว +153

    You are making so developers' life easier! While in this world, everything has a price, you are spreading valuable knowledge free. You are just awesome!

    • @newageeducation5908
      @newageeducation5908 4 ปีที่แล้ว

      this is youtube marketing bro, this video won't teach you anything, but it will make you interested in buying his course

    • @TheUjjwalpandey
      @TheUjjwalpandey 4 ปีที่แล้ว +9

      @@newageeducation5908 It's teaching us a lot.

    • @brazenbull36
      @brazenbull36 4 ปีที่แล้ว +15

      @@newageeducation5908 Wrong. His youtube videos are some of the best resources on the internet.

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

      @@newageeducation5908 The content and knowledge Venkat gives in his course for free, that, others charges 100s of bucks for the same.

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

      @@newageeducation5908 bro urs wrong assumption. Pls remove ur assumption . his video's helped a lot. It's free of cost.

  • @abeldaniel2245
    @abeldaniel2245 4 ปีที่แล้ว +16

    When I have a headache in coding I will come to Venkat clinic!!!

  • @sushensharma4730
    @sushensharma4730 5 ปีที่แล้ว +20

    This is height of coincidence ! ,..I was just going through few youtube videos about repository pattern ,but was not satisfied with their explanation .I was thinking in my my mind ,i wish kudvenkat could have uploaded video on same topic ...and allas! video poped up in my recommendation with uploaded time 7 minutes ago

    • @rajeshselvam564
      @rajeshselvam564 5 ปีที่แล้ว

      I'm learning lot of technology things from your tutorials... Really superb...

  • @ronjones1587
    @ronjones1587 5 ปีที่แล้ว +12

    I learned a lot from this Video Series and I have a new job right now, thank you man !

    • @Csharp-video-tutorialsBlogspot
      @Csharp-video-tutorialsBlogspot  5 ปีที่แล้ว +18

      Hello Ron - Wow....Hearty Congratulations. Very happy for you. Thank you very much for taking time to share the good news. It's an honour.
      Good luck and all the very best with your new role.

    • @manjinderbajwa1468
      @manjinderbajwa1468 4 ปีที่แล้ว

      Nice dear God bless

    • @Leng.sovandara
      @Leng.sovandara 4 ปีที่แล้ว

      me too.

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

    Venkat is an awesome teacher. Easy to understand and all his material is very practical. He's almost always my go to source.

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

    I need to find out special word to say thank you...!!!☺️

  • @AbdulSamad-ct9io
    @AbdulSamad-ct9io 5 ปีที่แล้ว +3

    Any video reference to understand the concept of generic repository and Unit of Work pattern. Thanks

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

    As usual, another useful video from kudvenkat. But one question -
    8:42 - Return the deleted employee? How is that possible?

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

      The moment you call dbContext.SaveChanges() after calling Remove(employee), the employee record will get deleted from the database. But you still have a reference to the corresponding employee object. You can use that for logging etc.

  • @MmMm-tg5mq
    @MmMm-tg5mq 5 ปีที่แล้ว +2

    very informative , concentrated and clear . If I can give more than one like I will give million likes, THANKS A LOT HERO

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

    This channel never fails to disappoint me. Learned C# from 2013 with Kudvenkat. Thank you very much! and more power!

  • @roadworthy-9708
    @roadworthy-9708 4 ปีที่แล้ว +3

    Hi Venkat,
    Great explanation. I have one question regarding AddScoped. What will happen if I use AddSingleton instead of AddScoped?
    I know the difference between them but I did not understand the real time benefit of using AddScoped in this video.. What is the advantage of using AddScoped?
    Can you please explain?
    Thanks

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

      if you know the answer tell me?

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

      Same question :/ Can anyone help for future viewers?

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

    Sir can you say how is AppDbContext injected in SQLEmployeeRepository? I am not able to understand this part

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

    This is by far the best explanation of the Repository pattern on the freakin' Internet to date, when I say far I mean like the distance from the MIlky Way to the end of the Universe far. Mate... great job keep it going.

    • @Csharp-video-tutorialsBlogspot
      @Csharp-video-tutorialsBlogspot  5 ปีที่แล้ว +1

      Hello Marko - Thank you very much for taking time to give feedback. This means a lot. I am very glad you found the videos useful.
      Good luck and all the very best with everything you are doing.

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

    Thank you so much Venkat.
    You have really done well. I have a question.
    If we have 100+ repositories, are we suppose to list all of them in the ConfigureServices Method? That I feel might be difficult to manage. Your advice please. Thank you

    • @Leng.sovandara
      @Leng.sovandara 4 ปีที่แล้ว +1

      I have this question too. Do you have answer yet?

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

    what happens if I use AddSingleton instead of AddScoped to persist the same repository instance across all http requests

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

    Waiting for the next video to be uploaded. The explanations here are SUPER AWESOME! Thank you very much for making such great tutorials.

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

    Thanks for posting the video. This is very useful. Can you post link to download source code of the project shown in the video.

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

    I am getting this exception, whats wrong with me?
    InvalidOperationException: The DbContext of type 'AppDbContext' cannot be pooled because it does not have a single public constructor accepting a single parameter of type DbContextOptions.

    • @MazharJavaid
      @MazharJavaid 5 ปีที่แล้ว

      Same. Did you find solution ?

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

      Yes.. I resolved

    • @MazharJavaid
      @MazharJavaid 5 ปีที่แล้ว

      @@saleemthuvvur7510 please explain the solution #saleem. THAnks

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

    Hi Mr. kudvenkat can you make videos on angular 7 and asp.net core web api implementation.

  • @john-blair
    @john-blair ปีที่แล้ว

    Why would you not use a singleton for the IEmployeeRepository? Thanks.

  • @talalshafiq3452
    @talalshafiq3452 5 ปีที่แล้ว +12

    Most clear and simple lecture on repository pattern i have came accross. Thank you sir. Love & Respect.

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

      Its Insane how good this thing is i love Venkat man :D

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

    I am not getting error cannot open databse . I am getting the error Object reference not set to an instance of an object. @foreach (var employee in Model). Please help me on the same.

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

    Excellent! Very concisely describes how and why to use the repository pattern!

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

    Thanks Sir I learn a lot from you Why not singleton object of sql repository

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

    Please can you up thing one step by making a Generic Repository Pattern. Thank you

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

    It's a really amazing and simple explanation. Thanks a lot Kudvenkat. I regret taking a course at Naresh IT, Hydrabad. They wasted my time and money. Thanks again Kudvenkat.

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

    Damn, outstanding tutorial
    Thank you

  • @Rajeshsingh-ws5th
    @Rajeshsingh-ws5th 3 ปีที่แล้ว

    Still its hard coded in startup. what if we want on conditional basis.

  • @lynnchen4048
    @lynnchen4048 4 ปีที่แล้ว

    sorry sir,i dont think repository pattern is neccesary.We 've created the dbContext instance by depency injection,why not just use the methods of our appDBContext to access the database in the controller action method?

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

      A lot of the topics that Venkat teaches may seem unnecessary in small projects. But he's preparing you for when you go into larger and complex projects.
      Having a repository class ensures you retrieve data the same way everytime, as you may require the same data from more than one business logic layer components.

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

    Sir, make a video on onion architecture as well.
    Thank you very much for teaching us.

    • @orlandojoaobita7876
      @orlandojoaobita7876 5 ปีที่แล้ว

      Of course! Onion architecture explained by Mr Venkat will be very easy to understand as he knows how to bring difficult contexts simple and clear. Thanks to him for help developers.

  • @niemaszglowy
    @niemaszglowy 4 ปีที่แล้ว

    Why would we need a repository? Can't we directly implement those CRUD methods in a service? Like EmployeeService which has a readonly private AppDbContext to work with?
    Why add another layer (repository)?
    Or am I just mistaking naming conventions and in this video Repository is a sort of Service?

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

    At 4:05 and several other places, why not just reuse the GetEmployee method instead of calling _employeeList.FirstOrDefault?

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

    Hello Venkat,
    Your all videos are excellent & easy to understand. Can you make video on "Unit Of Work" Pattern with example.

  • @potatodroid2
    @potatodroid2 5 ปีที่แล้ว

    Implementation for Update method in MockEmployeeRepository, as shown here, should not work.
    Instead the code below should.
    public Employee Update(Employee employee)
    {
    int Id = employee.Id;
    int index = _employeeList.FindIndex(e => e.Id == employee.Id);
    _employeeList[index].Name = employee.Name;
    _employeeList[index].Email = employee.Email;
    _employeeList[index].Department = employee.Department;
    return employee;
    }

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

    Why you don't use Async in Repository?

  • @basselbeiroumi1045
    @basselbeiroumi1045 4 ปีที่แล้ว

    If you have problems running the pogram it might be because you don't have the default page as index just put app.UseMvcWithDefaultRoute(); before app.UseMvc(routes =>
    {
    routes.MapRoute("default", "{controller=Home}/{action=Details}/{id=2}");
    }); and it should work (version 3.1)

  • @mudasirbhat126
    @mudasirbhat126 4 ปีที่แล้ว

    Hello Sir
    HTTP Error 500.30 - ANCM In-Process Start Failure
    I got this error while running the project, how to fix this ?
    As I have done the same things that you have done in the project so far.
    Please Reply as soon as possible

  • @IsmaelBarri
    @IsmaelBarri 5 ปีที่แล้ว

    I have a question, at 05:17 We are coping properties of employeeChanges to employee, but employee already equals to employeeChanges at line 51, why should we copy the properties again?

  • @basilio100
    @basilio100 4 ปีที่แล้ว

    Some people say that Repo pattern over EntityFramework is antipattern. EntityFW is already repository.
    Also not sure if .Save() inside of each repo method is good idea. What if you need to do few entity operations during request - then it will be few DB transactions. Probably better to have BaseRepo where you do generic retrival, update, create and save operations.

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

    Please send home controller file coding

  • @michaelkut7711
    @michaelkut7711 5 ปีที่แล้ว

    from where we are injecting the AppDbContext to the SQLEmployeeRepository constructor as a parameter !?

  • @microtech2448
    @microtech2448 5 ปีที่แล้ว

    Nicely explained but it seems similar to video on DI. Again the same doubt how one can have reference of multiple store repository at the same time, in this case InMemory and SQL repositories and use one on the fly as per requirement?

  • @scceconiprodcomsrl5723
    @scceconiprodcomsrl5723 5 ปีที่แล้ว

    So not this one ( video and tutorial) is great, all your videos are, but when one tutorial with Data Access and stored procedures , for those who has already databases ,stored procedures, triggers..etc? Thanks

  • @chaoticmind-z
    @chaoticmind-z 3 ปีที่แล้ว

    wow...just wow...you are truly amazing!! What a gem. God bless you

  • @srikanthek737
    @srikanthek737 4 ปีที่แล้ว

    How to consume stored procedure and views with EF Core ?, it looks complicated compared earlier EF, can you please give some lessons using dapper

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

    I thought ef core suggests that you don’t use repository pattern it slows it down when it already implements.

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

    is that code thread safe ? what about case the 2 requests are trying to change employee details ? anyway love your videos! perfect teacher.

  • @SuperOnlyP
    @SuperOnlyP 5 ปีที่แล้ว

    Sir, why is private context not defined as _context in: private readonly AppDbContext context;

  • @xaviercompagnion5309
    @xaviercompagnion5309 5 ปีที่แล้ว

    Sir, will you talk about asynchronous programming in the repository pattern ? Regards

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

    what's there in repository pattern. I am feeling like the interface-implementation concept only

  • @gangwargajendra
    @gangwargajendra 5 ปีที่แล้ว

    Sir plz make vedios on react js. Which will be implement in mvc core.

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

    Great video to learn if you are new and refresh the knowledge if you are old developer.

  • @tomcork1790
    @tomcork1790 4 ปีที่แล้ว

    Amazing videos @kudvenkat Used this to help me complete some of the implementation for my dissertation.

  • @norbertotriemstra466
    @norbertotriemstra466 5 ปีที่แล้ว

    What editing feature you use to copy withing Visual Studio ?

  • @girishparganiha3694
    @girishparganiha3694 5 ปีที่แล้ว

    Very Nicely Explained the concept. Thank You ...!!!

  • @yogibobo1
    @yogibobo1 4 ปีที่แล้ว

    Really good explaination. Thank you very much !!!

  • @kalpom
    @kalpom 5 ปีที่แล้ว

    can you please make one video of common repository and unit of work patterns as well?

  • @brianlaudrupchannel
    @brianlaudrupchannel 4 ปีที่แล้ว

    Do you recommend using the generic repository pattern?

  • @trustingod0
    @trustingod0 5 ปีที่แล้ว

    I'm getting a red squiggley line in the following code Department = Dept.HR in the MockEmployeeRepository. Should I have some Properties in the Department Class? Thanks !

    • @Csharp-video-tutorialsBlogspot
      @Csharp-video-tutorialsBlogspot  5 ปีที่แล้ว

      Hello Ronald - Here is the Dept enum. Hope this helps.
      namespace EmployeeManagement.Models
      {
      public enum Dept
      {
      None,
      HR,
      IT,
      Payroll
      }
      }

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

    thanks very very much, please continue

  • @iancarr3923
    @iancarr3923 5 ปีที่แล้ว

    Your videos are very useful, thanks. Your diction is excellent!

  • @MariamMohamed-lu6tw
    @MariamMohamed-lu6tw 2 ปีที่แล้ว

    Thank you so much for this amazing tutorial,
    For people using API, to display the result, use the following code in controller:
    [HttpGet]
    public IActionResult Get()
    {
    var employees = _employeeRep.GetAllEmployee();
    return Ok(employees );
    }

  • @mahimaheswari2059
    @mahimaheswari2059 4 ปีที่แล้ว

    hi venkat, one question in realtime scenario will use only with one databse(SQl,Oracle,..) we don''t need to create repositories multiple, Then how this repository pattern useful.

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

      Seperation of concerns. Back in the days when we were using ADO, we also created a data access layer that gets data from SQL and pass back to the caller which is the business logic layer. I see this repository pattern is pretty much doing the same thing.

  • @chrisdan81
    @chrisdan81 5 ปีที่แล้ว

    Hi. Does that repository can also be use to other classes or entities like department, product, customer tables? Thank you

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

    Thanks for sharing knowledge

  • @coderggk6819
    @coderggk6819 4 ปีที่แล้ว

    1) Why AddScoped and not AddSingleton?

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

      You will hit an error if you use AddSingleton. This is because internally services.AddDbContext adds the context as a scoped service and you can't use a scoped service inside a singleton service.
      Singleton service - Instance created on first request, stays alive and shared by all users until the application shuts down.
      Scoped service - Instance created on first request of a web request, stays alive and used only by the same web request.
      So why is the dbcontext added as scoped instead of singleton? Because
      * We would not want to have a dbcontext service to be shared by multiple users.
      * If it is a singleton service, it will stay alive and keep using more and more system resources for the hundreds and thousands or even millions of database calls and will soon crash the application.

  • @ManishSingh-zh8jz
    @ManishSingh-zh8jz 2 ปีที่แล้ว

    Thank you for saving my career

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

    Thank you sir ji

  • @poojadhamankar8604
    @poojadhamankar8604 4 ปีที่แล้ว

    It is such a clean, clear and up to the mark explanation

  • @shrutisahay216
    @shrutisahay216 4 ปีที่แล้ว

    Thank you so much for all your efforts, the description is also so informative , which proves your complete dedication that too for free, Really thank you sir , following you since college , my all major minor projects are becoz of you.

    • @Csharp-video-tutorialsBlogspot
      @Csharp-video-tutorialsBlogspot  4 ปีที่แล้ว

      Hello Shruti - Thank you very much for the feedback. Means a lot. I have included all the ASP .NET Core tutorial videos, slides and text articles in sequence on the following page. Hope you will find it handy.
      www.pragimtech.com/courses/asp-net-core-mvc-tutorial-for-beginners/
      When you have some time, can you please leave your rating and valuable feedback on the reviews tab. It really helps us. Thank you. Good luck and all the very best with everything you are doing.

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

    do we put our "repositories" in the models folder?

  • @ashiquebinraheem
    @ashiquebinraheem 5 ปีที่แล้ว

    I did seen many videos to understand the loosly couple feature of dependency injection. I found the exact loosly coupling example in this.also, i did watch your other videos in learn dotnet core section.every one is awsome. Thanks you sir for the nice videos..

    • @Csharp-video-tutorialsBlogspot
      @Csharp-video-tutorialsBlogspot  5 ปีที่แล้ว +2

      Hello Ashique - Thank you very much for taking time to give feedback. This means a lot. I am very glad you found the videos useful.

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

    Thank you for the awesome video.

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

    Thank you for the video. very useful

  • @pkcc9381
    @pkcc9381 5 ปีที่แล้ว

    Why not AddSingleton for the SQLEmployeeRepository service?

    • @swimmorning
      @swimmorning 4 ปีที่แล้ว

      Not sure if this has already been answered or not, but if you do AddSinglton an exception will be thrown:
      Singleton ImplementationType: EmployeeManagement.Models.SQLEmployeeRepository': Cannot consume scoped service 'EmployeeManagement.Models.AppDbContext' from singleton 'EmployeeManagement.Models.IEmployeeRepository

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

    very informative vid, great job!!

  • @puneetkankar
    @puneetkankar 5 ปีที่แล้ว

    very helpful and nice explanation sir.

  • @anand0901
    @anand0901 4 หลายเดือนก่อน

    Best explanation I have seen so far

  • @krishramakrishna9567
    @krishramakrishna9567 5 ปีที่แล้ว

    we have to write seperate repo for every table in database

  • @gauravverma7914
    @gauravverma7914 5 ปีที่แล้ว

    Sir how attach SEO framework in asp.net core

  • @coolwaterdvr
    @coolwaterdvr 5 ปีที่แล้ว

    Clear explanation of the repository pattern. Thank you Venkat. 👍

  • @ivandrofly
    @ivandrofly 5 ปีที่แล้ว

    Repository Pattern is one of the best pattern

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

    Nice Video. Thanks Sir

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

    Thanks buddy

  • @sachingreat222
    @sachingreat222 4 ปีที่แล้ว

    Plz let me know control period key

  • @eugene-white-shark
    @eugene-white-shark 3 ปีที่แล้ว

    thank you

  • @nitro-boy09
    @nitro-boy09 5 ปีที่แล้ว

    This question might be out of topic, but how can you register DI outside of compile time to make it more configurable without recompiling?

    • @steveymcneckbeard
      @steveymcneckbeard 5 ปีที่แล้ว

      I don't understand your question. Do you mean in a separate project/ class library?

    • @nitro-boy09
      @nitro-boy09 5 ปีที่แล้ว

      @@steveymcneckbeard I mean register dependencies using an external file or config file so nobody has to recompile codes.

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

    Great❤❤❤

  • @MmMm-tg5mq
    @MmMm-tg5mq 5 ปีที่แล้ว

    great trainer thanks thanks thanks :)

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

    Thank you for this!

  • @itratsheikh1803
    @itratsheikh1803 4 ปีที่แล้ว

    Really sir you are awesome!

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

    Thank You Sir :)

  • @mystique87
    @mystique87 5 ปีที่แล้ว

    Long live to you sir

  • @sajadtorkamani9399
    @sajadtorkamani9399 4 ปีที่แล้ว

    Great video!

  • @coolwaterdvr
    @coolwaterdvr 5 ปีที่แล้ว

    Thanks Venkat.

  • @rohan637
    @rohan637 5 ปีที่แล้ว

    Thank you for the upload

  • @naodagere8210
    @naodagere8210 4 ปีที่แล้ว

    Marvelous!

  • @pritpalkaur5582
    @pritpalkaur5582 5 ปีที่แล้ว

    You rock sir

  • @robmays6982
    @robmays6982 5 ปีที่แล้ว

    excellent

  • @krishramakrishna9567
    @krishramakrishna9567 5 ปีที่แล้ว

    ?