public async Task <IHttpActionResult> UpdateFESearchRequest(int id, FESearchRequest fESearchRequest)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            if (id != fESearchRequest.ID)
            {
                return(BadRequest());
            }

            using (var db = new FEMainDBContext()) {
                db.Entry(fESearchRequest).State = EntityState.Modified;

                try {
                    await db.SaveChangesAsync();
                } catch (DbUpdateConcurrencyException) {
                    if (!FESearchRequestExists(id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
            }
            return(StatusCode(HttpStatusCode.NoContent));
        }
        public IEnumerable <FESearchRequest> GetFESearchRequests()
        {
            IEnumerable <FESearchRequest> sReqs = null;

            using (var db = new FEMainDBContext()) {
                sReqs = db.FESearchRequests;
            }
            return(sReqs);
        }
示例#3
0
 public async Task <IHttpActionResult> PostFEExecution(FEExecution fEExecution)
 {
     if (!ModelState.IsValid)
     {
         return(BadRequest(ModelState));
     }
     using (var db = new FEMainDBContext()) {
         db.FEExecutions.Add(fEExecution);
         await db.SaveChangesAsync();
     }
     return(CreatedAtRoute("DefaultApi", new { id = fEExecution.ID }, fEExecution));
 }
示例#4
0
        public IEnumerable <FEExecution> GetFEExecutions(int searchRequestID)
        {
            IEnumerable <FEExecution> executionsOfSReq = null;

            using (var db = new FEMainDBContext()) {
                executionsOfSReq = db.FEExecutions
                                   .Where(exec => exec.SearchRequestID == searchRequestID)
                                   .Include(exec => exec.TheResults)
                                   .OrderByDescending(exec => exec.FinishedOn)
                                   .ToList();
            }
            return(executionsOfSReq);
        }
        public async Task <IHttpActionResult> UpdateFESearchRequestStatus(int id, Status newStatus)
        {
            FESearchRequest oldSearchRequest = null;

            using (var db = new FEMainDBContext()) {
                oldSearchRequest = await db.FESearchRequests.FindAsync(id);

                if (oldSearchRequest == null)
                {
                    return(NotFound());
                }
                oldSearchRequest.TheStatus = newStatus;
            }
            return(await UpdateFESearchRequest(id, oldSearchRequest));
        }
        public async Task <IHttpActionResult> GetFESearchRequest(int id)
        {
            FESearchRequest fESearchRequest = null;

            using (var db = new FEMainDBContext()) {
                fESearchRequest = db.FESearchRequests
                                  .Where(sReq => sReq.ID == id)
                                  .Include(sReq => sReq.TheLatestExecution.TheResults)
                                  .First();
            }
            if (fESearchRequest == null)
            {
                return(NotFound());
            }
            return(Ok(fESearchRequest));
        }
        public IEnumerable <FESearchRequest> GetFESearchRequests(string userID)
        {
            IEnumerable <FESearchRequest> searchRequestsByUser = null;

            using (var db = new FEMainDBContext()) {
                try {
                    searchRequestsByUser = db.FESearchRequests
                                           .Where(sReq => sReq.TheUserID == userID)
                                           .Include(sReq => sReq.TheLatestExecution.TheResults)
                                           .ToList();
                    return(searchRequestsByUser);
                } catch {
                }
            }
            return(searchRequestsByUser);
        }
示例#8
0
 /*
  * protected override void Dispose(bool disposing) {
  *  if(disposing) {
  *      db.Dispose();
  *  }
  *  base.Dispose( disposing );
  * }
  */
 private bool FESearchRequestExists(int id)
 {
     using (var db = new FEMainDBContext()) {
         return(db.FESearchRequests.Count(e => e.ID == id) > 0);
     }
 }