// GET: api/Products public IHttpActionResult Get() { string token = GetAuthToken(); IHttpActionResult validateToken = ValidateToken(token); if (validateToken != null) { return(validateToken); } Dictionary <String, String> query = ActionContext.Request.GetQueryNameValuePairs().ToDictionary(q => q.Key, q => q.Value); ProductSearchFilter filter = new ProductSearchFilter(); if (query.ContainsKey("Name")) { filter.Name = query["Name"]; } if (query.ContainsKey("Description")) { filter.Description = query["Description"]; } if (query.ContainsKey("PriceFrom")) { filter.PriceFrom = Double.Parse(query["PriceFrom"]); } if (query.ContainsKey("PriceTo")) { filter.PriceTo = Double.Parse(query["PriceTo"]); } if (query.ContainsKey("Category")) { filter.Category = query["Category"]; } DataAccessSoapClient ws = new DataAccessSoapClient(); var binding = ws.ChannelFactory.Endpoint.Binding as BasicHttpBinding; binding.MaxReceivedMessageSize = int.MaxValue; Product[] prods = ws.FindProductsByFilter(new DataAccessWS.Security { BinarySecurityToken = token }, filter); return(Ok(prods.Select(p => CreateRestProduct(p)))); }
public IHttpActionResult Get(string username) { DataAccessSoapClient dataWS = new DataAccessSoapClient(); var binding = dataWS.ChannelFactory.Endpoint.Binding as BasicHttpBinding; binding.MaxReceivedMessageSize = int.MaxValue; string token = GetAuthToken(); IHttpActionResult validation = ValidateSeller(token, username); if (validation != null) { return(validation); } Product[] products = dataWS.FindProductsByFilter(new DataAccessWS.Security { BinarySecurityToken = token }, new ProductSearchFilter { Seller = username }); return(Ok(products.Select(p => CreateRestProduct(p)))); }