public ProductProjectModule(IProductProjectService productProjectService) : base("/productproject") { this._productProjectService = productProjectService; this.Post( "/", parameters => { try { var productProject = this.Bind <ProductProject>(); var serviceReturn = new ServiceReturn <ProductProject>(); //serviceReturn.Data = this._productProjectService.Save(productProject); serviceReturn.Success = true; return(this.GetJsonResponse(serviceReturn)); } catch (Exception e) { return(this.Negotiate.WithStatusCode(HttpStatusCode.InternalServerError)); } }); }
public ProductModule(IProductService productService, IProductProjectService productProjectService) : base("lookup") { this._productService = productService; this._productProjectService = productProjectService; this.Get( "/products", parameters => { try { var products = this._productService.Get().ToList(); return(this.GetJsonResponse(products)); } catch (Exception e) { return(this.Negotiate.WithStatusCode(HttpStatusCode.InternalServerError)); } }); this.Get( "/products/{projectid}", parameters => { try { var projectId = parameters.projectid; var products = this._productService.GetAllForProject(projectId); return(this.GetJsonResponse(products)); } catch (Exception e) { return(this.Negotiate.WithStatusCode(HttpStatusCode.InternalServerError)); } }); this.Post( "/projects/{projectid}/products", parameters => { try { var projectId = parameters.projectid; var products = this.Bind <List <Product> >(); var serviceReturn = new ServiceReturn <List <ProductProject> >(); serviceReturn.Data = this._productProjectService.Save(products, projectId); serviceReturn.Success = true; return(this.GetJsonResponse(serviceReturn)); } catch (Exception e) { Console.WriteLine(e); throw; } }); }