public List <StockCalculationResult> GetAllCalculations() { var repository = new StockHttpApplicationRepository(HttpContext.Current.Application); var result = repository.GetAll(); //if repository don't have a data then we return null return(result == null ? null : result.ToList()); }
public HttpResponseMessage Calculate(StockDetails details) { if (!ModelState.IsValid) { return(Request.CreateErrorResponse(System.Net.HttpStatusCode.BadRequest, ModelState)); } //custom validation for price if (details.Price < 0) { ModelState.AddModelError("Price", string.Format("The value {0} is not valid for the field Price", details.Price)); return(Request.CreateErrorResponse(System.Net.HttpStatusCode.BadRequest, ModelState)); } //Need to encode string before save in repository details.Name = HttpUtility.HtmlEncode(details.Name); var result = StockCalculator.Calculate(new StockData(details)); var repository = new StockHttpApplicationRepository(HttpContext.Current.Application); repository.Add(new StockCalculationResult(details, result)); return(Request.CreateResponse(System.Net.HttpStatusCode.OK, result)); }