public async Task <IActionResult> GetAuthors() { var db = new Lab2Context(); var authors = db.Authors.ToList(); return(Ok(authors)); /* select * from Authors*/ }
//Lazy Loading //Install Microsoft.EntityFrameworkCore.Proxies public async Task <IActionResult> GetAuthorsIdsLazy() { var db = new Lab2Context(); var authorsIds = db.Authors.Select(x => x.Id).AsQueryable(); return(Ok(authorsIds)); /*select id from Authors*/ //it will query the db only on return because that is the place we actually need the data }
public void Can_get_item() { using (var context = new Lab2Context(ContextOptions)) { var controller = new RoomsController(context); var item = controller.GetRooms(1); Assert.Equal("oll", item.Description); } }
public void Can_get_items() { using (var context = new Lab2Context(ContextOptions)) { var controller = new RoomsController(context); var items = controller.GetRooms().ToList(); Assert.Equal(3, items.Count); Assert.Equal(2, items[1].RoomID); Assert.Equal(500, items[2].Price); } }
//Eager Loading //Comment or Uncomment from OnConfiguring in Context .UseLazyLoadingProxies() public async Task <IActionResult> Filter() { var db = new Lab2Context(); var authors = db.Authors .Include(x => x.Books) .Include(x => x.AuthorAddress) .Where(x => x.Books.Count > 0) .Select(x => new { Id = x.Id, FirstBookName = x.Books.FirstOrDefault().Name }) .ToList(); return(Ok(authors)); }
//Eager Loading public async Task <IActionResult> GetAuthorsIdsEager() { var db = new Lab2Context(); var authorsIds = db.Authors.Select(x => x.Id).ToList(); var authorCopy1 = authorsIds; var authorCopy2 = authorsIds; var authorCopy3 = authorsIds; return(Ok(authorsIds)); /*select id from Authors*/ }
private void Form1_Load(object sender, EventArgs e) { db = new Lab2Context(); if (db.Database.CanConnect()) { var stores = db.Stores.ToList(); foreach (var store in stores) { treeViewStores.Nodes.Add(store.StoreName); } } }
//Lazy Loading //Add in connection string : ;MultipleActiveResultSets=true public async Task <IActionResult> JoinLazy() { var db = new Lab2Context(); var authors = db.Authors.AsQueryable(); foreach (var x in authors) { var y = x.Books; } //check console, it will query the database every time x.Books is called return(Ok(authors)); }
public async Task <IActionResult> Update([FromBody] AuthorModel authorCreationModel) { var db = new Lab2Context(); var author = db.Authors.FirstOrDefault(x => x.Id == authorCreationModel.Id); author.Name = authorCreationModel.Name; db.Authors.Update(author); await db.SaveChangesAsync(); return(Ok()); }
public async Task <IActionResult> OrderBy() { var db = new Lab2Context(); var authors = db.Authors .Include(x => x.Books) .Include(x => x.AuthorAddress) .Where(x => x.Books.Count > 0) .Select(x => new { Id = x.Id, FirstBookName = x.Books.FirstOrDefault().Name }) .ToList() .OrderByDescending(x => x.FirstBookName) //Descending OR OrderBy => Ascending .ToList(); return(Ok(authors)); }
//Eager Loading //Comment or Uncomment from OnConfiguring in Context .UseLazyLoadingProxies() public async Task <IActionResult> JoinEager() { var db = new Lab2Context(); var authors = db.Authors .Include(x => x.Books) .Include(x => x.AuthorAddress) .ToList(); foreach (var x in authors) { var y = x.Books; } //Check console , it will only query the db once return(Ok(authors)); }
public async Task <IActionResult> Create([FromBody] AuthorModel authorCreationModel) { var db = new Lab2Context(); var newAuthor = new Author { Id = authorCreationModel.Id, Name = authorCreationModel.Name }; // db.Add(newAuthor); await db.Authors.AddAsync(newAuthor); await db.SaveChangesAsync(); return(Ok()); }
public async Task <IActionResult> Create([FromBody] string name) { var db = new Lab2Context(); var newAuthor = new Author { Id = "5", Name = name }; // db.Add(newAuthor); await db.Authors.AddAsync(newAuthor); await db.SaveChangesAsync(); return(Ok()); }
private void Seed() { using (var context = new Lab2Context(ContextOptions)) { context.Database.EnsureDeleted(); context.Database.EnsureCreated(); var one = new Rooms { RoomID = 1, Description = "oll", Number = 100, Price = 5 }; var two = new Rooms { RoomID = 2, Description = "fgdhl", Number = 200, Price = 50 }; var three = new Rooms { RoomID = 3, Description = "room", Number = 300, Price = 500 }; context.AddRange(one, two, three); context.SaveChanges(); } }
public BlokValid(Lab2Context context, Blok blok) { _context = context; this.blok = blok; }
public UniversityValid(Lab2Context context, University university) { _context = context; this.university = university; }
public FloorValid(Lab2Context context, Floor floor) { _context = context; this.floor = floor; }
public CamerasController(Lab2Context context) { _context = context; }
public RoomsController(Lab2Context context) { _context = context; }
public RoomValid(Lab2Context context, Room room) { _context = context; this.room = room; }
public DormitoriesController(Lab2Context context) { _context = context; }
public PostsController(Lab2Context context) { _context = context; }
public DormValid(Lab2Context context, Dormitory dormitory) { _context = context; this.dormitory = dormitory; }
public ClientsController(Lab2Context context) { _context = context; }
public CampusValid(Lab2Context context, Campus campus) { _context = context; this.campus = campus; }
public OrdersController(Lab2Context context) { _context = context; }
public HomeController(ILogger <HomeController> logger, Lab2Context context) { _logger = logger; _context = context; }
public MountingsController(Lab2Context context) { _context = context; }
public BlokController(Lab2Context context) { _context = context; }
public FloorsController(Lab2Context context) { _context = context; }