/// <summary>Gets the specified filter.</summary>
        /// <param name="filter">The filter.</param>
        /// <param name="orderBy">The order by.</param>
        /// <param name="includeProperties">The include properties.</param>
        /// <returns>Task.</returns>
        public async Task <IEnumerable <T> > Get(Expression <Func <T, bool> > filter = null, Func <IQueryable <T>, IOrderedQueryable <T> > orderBy = null, string includeProperties = "")
        {
            using (DistribuitorServiciiMobileContext context = new DistribuitorServiciiMobileContext())
            {
                DbSet <T> dbSet = context.Set <T>();

                IQueryable <T> query = dbSet;

                if (filter != null)
                {
                    query = query.Where(filter);
                }

                foreach (var includeProperty in includeProperties.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries))
                {
                    query = query.Include(includeProperty);
                }

                if (orderBy != null)
                {
                    return(await orderBy(query).ToListAsync());
                }
                else
                {
                    return(await query.ToListAsync());
                }
            }
        }
 /// <summary>Gets the by identifier.</summary>
 /// <param name="id">The identifier.</param>
 /// <returns>Task.</returns>
 public async Task <T> GetById(object id)
 {
     using (DistribuitorServiciiMobileContext context = new DistribuitorServiciiMobileContext())
     {
         return(await context.Set <T>().FindAsync(id));
     }
 }
        /// <summary>Inserts the specified entity.</summary>
        /// <param name="entity">The entity.</param>
        /// <returns>Task.</returns>
        public async Task Insert(T entity)
        {
            using (DistribuitorServiciiMobileContext context = new DistribuitorServiciiMobileContext())
            {
                DbSet <T> dbSet = context.Set <T>();
                await dbSet.AddAsync(entity);

                await context.SaveChangesAsync();
            }
        }
        /// <summary>Updates the specified item.</summary>
        /// <param name="item">The item.</param>
        /// <returns>Task.</returns>
        public async Task Update(T item)
        {
            using (DistribuitorServiciiMobileContext context = new DistribuitorServiciiMobileContext())
            {
                DbSet <T> dbSet = context.Set <T>();
                dbSet.Attach(item);
                context.Entry(item).State = EntityState.Modified;

                await context.SaveChangesAsync();
            }
        }
        /// <summary>Deletes the specified entity.</summary>
        /// <param name="entity">The entity.</param>
        /// <returns>Task.</returns>
        public async Task Delete(T entity)
        {
            using (DistribuitorServiciiMobileContext context = new DistribuitorServiciiMobileContext())
            {
                DbSet <T> dbSet = context.Set <T>();

                if (context.Entry(entity).State == EntityState.Detached)
                {
                    dbSet.Attach(entity);
                }

                dbSet.Remove(entity);

                await context.SaveChangesAsync();
            }
        }
Beispiel #6
0
        static async System.Threading.Tasks.Task Main(string[] args)
        {
            DistribuitorServiciiMobileContext context = new DistribuitorServiciiMobileContext();

            IAbonamentRepository abonamentRepository = new AbonamentRepository();
            AbonamentController  abonamentController = new AbonamentController(abonamentRepository);
            //Abonament abonament = new Abonament()
            //{
            //    Pret = 1000,
            //    DataInceput = DateTime.Now,
            //    DataSfarsit = new DateTime(2020, 9, 14),
            //};

            //await abonamentController.AddAbonament(abonament);

            IEnumerable <Abonament> abonamentList = await abonamentController.GetAllAbonament();

            //foreach (var entry in abonamentList)
            //{
            //    Console.WriteLine(entry.Pret);
            //    Console.WriteLine(entry.DataInceput);
            //    Console.WriteLine(entry.DataSfarsit);
            //}

            //IClientRepository clientRepository = new ClientRepository();
            //ClientController clientController = new ClientController(clientRepository);
            //Client client = new Client()
            //{
            //    FirstName = "Octavian",
            //    LastName = "Pintiliciuc",
            //    CodNumericPersonal = "1960914080014"
            //};

            //await clientController.AddClient(client);

            //IEnumerable<Client> clientList = await clientController.GetAllClient();

            //foreach (var entry in clientList)
            //{
            //    Console.WriteLine(entry.FirstName);
            //    Console.WriteLine(entry.LastName);
            //    Console.WriteLine(entry.CodNumericPersonal);
            //}

            //IContractRepository contractRepository = new ContractRepository();
            //ContractController contractController = new ContractController(contractRepository);
            //Contract contract = new Contract()
            //{
            //    Abonament = abonamentList.FirstOrDefault(),
            //    Client = clientList.FirstOrDefault()
            //};

            //await contractController.AddContract(contract);

            //IEnumerable<Contract> contractList = await contractController.GetAllContract();

            //foreach (var entry in contractList)
            //{
            //    Console.WriteLine(entry.Abonament.Pret);
            //    Console.WriteLine(entry.Client.FirstName);
            //}
        }