/// <summary>
 /// Gets Registrations for a specific serial
 /// </summary>
 /// <param name="serial">Serial for product</param>
 /// <returns>List of registrations</returns>
 public async Task <IEnumerable <SerialRegistration> > GetRegistrationsBySerialAsync(string serial)
 {
     using (var db = new AcmeDrawDatabase())
     {
         return(await db.Registrations.Where(r => r.Serial == serial).ToListAsync());
     }
 }
 /// <summary>
 /// Saves a restration to the database
 /// </summary>
 /// <param name="registration">The registration to save</param>
 /// <returns>awaitable Task</returns>
 public async Task SaveRegistrationAsync(SerialRegistration registration)
 {
     using (var db = new AcmeDrawDatabase())
     {
         await db.InsertAsync(registration);
     }
 }
Ejemplo n.º 3
0
        /// <summary>
        /// Gets ar serial by the serial it self
        /// </summary>
        /// <param name="serial">string serial</param>
        /// <returns>serial entity</returns>
        public async Task <Serial> GetSerialAsync(string serial)
        {
            using (var db = new AcmeDrawDatabase())
            {
                var list = await db.Serials.Where(s => s.SerialNumber == serial).ToListAsync();

                return(list.FirstOrDefault());
            }
        }
        /// <summary>
        /// Gets all registrations paged
        /// </summary>
        /// <param name="page">The current page</param>
        /// <param name="amount">Amount of registrations to fetch</param>
        /// <param name="totalRecords">The total number of registrations registered</param>
        /// <returns>List of registrations</returns>
        public async Task <PageResult <SerialRegistration> > GetAllByPageAsync(int page, int amount)
        {
            using (var db = new AcmeDrawDatabase())
            {
                var registrations = db.Registrations.AsQueryable();

                var totalRecords = registrations.Count();

                var results = await registrations.Skip((page - 1) *amount).Take(amount).ToListAsync();

                return(new PageResult <SerialRegistration>
                {
                    PageNumber = page,
                    PageSize = amount,
                    Rows = results,
                    TotalCount = totalRecords
                });
            }
        }