예제 #1
0
 public T Select(int id)
 {
     using (var data = new SQLContext(_OptionsBuilder))
     {
         return(data.Set <T>().Find(id));
     }
 }
예제 #2
0
 public IList <T> SelectByQuantidade(int tamanhoListaAutores)
 {
     using (var data = new SQLContext(_OptionsBuilder))
     {
         return(data.Set <T>().Take(tamanhoListaAutores).ToList());
     }
 }
예제 #3
0
 public async Task <IList <Autor> > SelectByQuantidadeAsync(int quantidadeListaAutores)
 {
     using (var data = new SQLContext(_OptionsBuilder))
     {
         return(await data.Set <Autor>().Take(quantidadeListaAutores).ToListAsync());
     }
 }
예제 #4
0
 public IList <T> SelectAll()
 {
     using (var data = new SQLContext(_OptionsBuilder))
     {
         return(data.Set <T>().ToList());
     }
 }
예제 #5
0
 public void Delete(int id)
 {
     using (var data = new SQLContext(_OptionsBuilder))
     {
         data.Set <T>().Remove(Select(id));
         data.SaveChanges();
     }
 }
예제 #6
0
 public void Insert(T obj)
 {
     using (var data = new SQLContext(_OptionsBuilder))
     {
         data.Set <T>().Add(obj);
         data.SaveChanges();
     }
 }
예제 #7
0
 public Repository(SQLContext dbContext)
 {
     _dbContext = dbContext;
     _dbSet     = _dbContext.Set <T>();
 }
예제 #8
0
파일: Program.cs 프로젝트: mateuszs076/ZTDB
 private static void ImportFromTable(bool doDelete = false)
 {
     using (var context = new SQLContext())
     {
         context.Database.Migrate();
         context.Database.SetCommandTimeout(300);
         bool end       = false;
         int  i         = 0;
         var  codes     = context.Set <CancelCode>().ToDictionary(a => a.Code, a => a);
         var  airlines  = context.Set <Airline>().ToDictionary(a => a.Code, a => a);
         var  locations = context.Set <Location>().ToDictionary(a => a.Code, a => a);
         var  count     = context.Set <DataToImport>().LongCount();
         Console.WriteLine("Ilość rekordów do zaimportowania: " + count);
         while (!end)
         {
             List <Flight>       flights = new List <Flight>();
             List <DataToImport> data;
             List <DataToImport> recordsToDelete = new List <DataToImport>();
             if (doDelete)
             {
                 data = context.Set <DataToImport>().Skip(NUMBER_OF_RECORDS * i).Take(NUMBER_OF_RECORDS).ToList();
             }
             else
             {
                 data = context.Set <DataToImport>().Skip(errorsNumber).Take(NUMBER_OF_RECORDS).ToList();
             }
             foreach (var record in data)
             {
                 if (!GetOrCreateCancelCode(record, codes, out CancelCode code))
                 {
                     code = null;
                 }
                 if (!GetOrCreateAirline(record, airlines, out Airline airline))
                 {
                     continue;
                 }
                 if (!GetOrCreateDestinationLocation(record, locations, out Location destLocation))
                 {
                     continue;
                 }
                 if (!GetOrCreateOriginLocation(record, locations, out Location originLocation))
                 {
                     continue;
                 }
                 if (!CreateFlight(record, originLocation, destLocation, code, airline, out Flight flight))
                 {
                     continue;
                 }
                 flights.Add(flight);
                 if (doDelete)
                 {
                     recordsToDelete.Add(record);
                 }
             }
             if (doDelete)
             {
                 context.Set <DataToImport>().RemoveRange(recordsToDelete);
             }
             context.Set <Flight>().AddRange(flights);
             context.SaveChanges();
             Console.WriteLine((NUMBER_OF_RECORDS * i) + data.Count + "/" + count);
             ++i;
             if (data.Count < NUMBER_OF_RECORDS)
             {
                 end = true;
             }
         }
     }
 }
예제 #9
0
 public T Insert(T obj)
 {
     context.Set <T>().Add(obj);
     context.SaveChanges();
     return(obj);
 }
예제 #10
0
 /// <summary>
 /// Construtor de contexto do banco de dados
 /// </summary>
 /// <param name="_sqlContext"></param>
 public RepositoryBase(SQLContext _sqlContext, INotificationManager _notificationManager) : base(_notificationManager)
 {
     sqlContext = _sqlContext;
     DbSet      = sqlContext.Set <TEntity>();
 }
 public Repository(SQLContext context)
 {
     Db    = context;
     DbSet = Db.Set <T>();
 }
예제 #12
0
 public SeedInitialData(SQLContext context)
 {
     _context = context;
     _users   = context.Set <User>();
 }
예제 #13
0
 public virtual IEnumerable <TEntity> GetAll()
 {
     return(_context.Set <TEntity>().ToList());
 }
예제 #14
0
 public AuthRepository(SQLContext context)
 {
     _context = context;
     _users   = context.Set <User>();
 }
예제 #15
0
 public virtual T BuscarPorId(Guid?Id)
 {
     if (HttpContext.Current.User.Identity.IsAuthenticated)
     {
         if (usuarioLogado_usuarioprincipal)
         {
             return
                 ((from entidades in dbSet
                   join usuarios in Db.Set <Usuario>() on entidades.CriadoPor equals usuarios.UserName
                   where usuarios.Id_Usuario_Principal == usuarioLogado_id || usuarios.Id == usuarioLogado_id &&
                   entidades.Id == Id
                   select entidades).FirstOrDefault());
         }
         else if (usuarioLogado_organizador)
         {
             return(dbSet.SingleOrDefault(t => t.CriadoPor == usuarioLogado_username && t.Id == Id));
         }
         else if (usuarioLogado_id_usuario_principal.Any())
         {
             return
                 ((from entidades in dbSet
                   join usuarios in Db.Set <Usuario>() on entidades.CriadoPor equals usuarios.UserName
                   where usuarios.Id_Usuario_Principal == usuarioLogado_id_usuario_principal || usuarios.Id == usuarioLogado_id_usuario_principal || usuarios.Id == usuarioLogado_id &&
                   entidades.Id == Id
                   select entidades).FirstOrDefault());
         }
         else if (usuarioLogado_caixaevento)
         {
             return
                 ((from entidades in dbSet
                   join usuarioEvento in Db.Set <Evento_Usuario>() on entidades.CriadoPor equals usuarioEvento.Usuario.UserName
                   join usuarios in Db.Set <Usuario>() on entidades.CriadoPor equals usuarios.UserName
                   where usuarioEvento.Evento.Id_organizador == usuarioLogado_id_usuario_organizador ||
                   usuarios.id_usuario_organizador == usuarioLogado_id_usuario_organizador ||
                   entidades.CriadoPor == usuarioLogado_id &&
                   entidades.Deletado == false &&
                   entidades.Id == Id
                   select entidades).FirstOrDefault());
         }
         else
         {
             return(dbSet.FirstOrDefault(t => t.Id == Id));
         }
     }
     else
     {
         return(dbSet.FirstOrDefault(t => t.Id == Id));
     }
 }
예제 #16
0
 public Repository()
 {
     Db    = new SQLContext();
     dbSet = Db.Set <T>();
 }
예제 #17
0
 public BaseRepository(SQLContext context)
 {
     _context = context;
     DbSet    = _context.Set <TEntity>();
 }
예제 #18
0
 public Repository(SQLContext context)
 {
     _context    = context;
     _collection = context.Set <TEntity>();
 }
예제 #19
0
 /// <summary>
 /// Construtor de contexto do banco de dados
 /// </summary>
 /// <param name="_sqlContext"></param>
 public RepositoryBase(SQLContext _sqlContext)
 {
     sqlContext = _sqlContext;
     DbSet      = sqlContext.Set <TEntity>();
 }
예제 #20
0
 public SQLRepository(SQLContext context)
 {
     _context = context;
     _dbSet   = _context.Set <TEntity>();
 }
예제 #21
0
 public GenericRepository(SQLContext context)
 {
     _context = context;
     _dataSet = _context.Set <T>();
 }
예제 #22
0
 public async Task <T> ObterAsync(int id)
 {
     return(await context.Set <T>().FindAsync(id));
 }