static void InsertRooms(FptFapClient fapClient) { var fapRooms = fapClient.GetAllRooms().Result; var rooms = fapRooms.Select(o => o.ToRoom()) .Distinct(new RoomComparer()).ToList(); var builder = new DbContextOptionsBuilder <DataContext>().UseSqlServer( DataConsts.CONN_STR); var options = builder.Options; using (var context = new DataContext(options)) { context.Room.AddRange(rooms); context.SaveChanges(); } }
public async Task <int> SyncRoomWithFapAsync(FptFapClient fapClient) { var rooms = await fapClient.GetAllRooms(); var area3Rooms = rooms.Where(o => o.AreaId == 3).ToList(); foreach (var r in area3Rooms) { var existed = Rooms.Code(r.RoomNo).Any(); Room entity = r.ToRoom(); if (existed) { var oldRes = RoomResources.OfRoom(entity.Code).ToList(); DeleteRoomServices(oldRes); context.Room.Update(entity); } else { context.Room.Add(entity); } } return(area3Rooms.Count); }