Пример #1
0
        public async Task <IActionResult> GetAuthors()
        {
            var db = new Lab2Context();

            var authors = db.Authors.ToList();

            return(Ok(authors));
            /* select * from Authors*/
        }
Пример #2
0
        //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
        }
Пример #3
0
        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);
            }
        }
Пример #4
0
        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);
            }
        }
Пример #5
0
        //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));
        }
Пример #6
0
        //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*/
        }
Пример #7
0
        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);
                }
            }
        }
Пример #8
0
        //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));
        }
Пример #9
0
        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());
        }
Пример #10
0
        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));
        }
Пример #11
0
        //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));
        }
Пример #12
0
        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());
        }
Пример #13
0
        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());
        }
Пример #14
0
        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();
            }
        }
Пример #15
0
 public BlokValid(Lab2Context context, Blok blok)
 {
     _context  = context;
     this.blok = blok;
 }
Пример #16
0
 public UniversityValid(Lab2Context context, University university)
 {
     _context        = context;
     this.university = university;
 }
Пример #17
0
 public FloorValid(Lab2Context context, Floor floor)
 {
     _context   = context;
     this.floor = floor;
 }
Пример #18
0
 public CamerasController(Lab2Context context)
 {
     _context = context;
 }
Пример #19
0
 public RoomsController(Lab2Context context)
 {
     _context = context;
 }
Пример #20
0
 public RoomValid(Lab2Context context, Room room)
 {
     _context  = context;
     this.room = room;
 }
Пример #21
0
 public DormitoriesController(Lab2Context context)
 {
     _context = context;
 }
Пример #22
0
 public PostsController(Lab2Context context)
 {
     _context = context;
 }
Пример #23
0
 public DormValid(Lab2Context context, Dormitory dormitory)
 {
     _context       = context;
     this.dormitory = dormitory;
 }
Пример #24
0
 public ClientsController(Lab2Context context)
 {
     _context = context;
 }
Пример #25
0
 public CampusValid(Lab2Context context, Campus campus)
 {
     _context    = context;
     this.campus = campus;
 }
Пример #26
0
 public OrdersController(Lab2Context context)
 {
     _context = context;
 }
Пример #27
0
 public HomeController(ILogger <HomeController> logger, Lab2Context context)
 {
     _logger  = logger;
     _context = context;
 }
Пример #28
0
 public MountingsController(Lab2Context context)
 {
     _context = context;
 }
Пример #29
0
 public BlokController(Lab2Context context)
 {
     _context = context;
 }
Пример #30
0
 public FloorsController(Lab2Context context)
 {
     _context = context;
 }