2017-08-26 3 views
-1

私は自分のアプリケーションで検索を追加しています。私はすべての販売された製品のリストを入手し、価格でn平均を計算したいと考えています。私はキーワードで検索し、すべての売り切れ商品を日付の範囲で取得したい

私は書くことができます::

キーワード:iphoneの7初期日付:例えば

2017年8月1日最終日:201/08/13

私はすべて販売された製品を取得したいです2つの日付の間にIphone 7で数えます。

答えて

0

最も簡単な実装では、 が必要です。1.解析ロジック - 使用できるオブジェクトに文字列を挿入するもの キーワード:Iphone 7の初期日付:2017/08/01最終日時:201/8月13日

へ:

// this is an example 
public class SearchCriteria 
{ 
    public string Keyword {get;set;} 
    public string From {get;set;} 
    public string To {get;set;} 
} 

public class Parser 
{ 

    public SearchCriteria Parse(string searchExpression) 
    { 
     var keyword = string.Empty; 
     var from = DateTime.Min; 
     var to = DateTime.Max; 
     // To do 
     // ... parse your string here 
     // 
     return new SearchCriteria(){Keyword = keyword, From = from, To = to}; 
    } 

} 

2.オブジェクトクエリ変換および実行します。あなたが、ここで可能な選択肢のトンを持っているADO、LINQの、EF、オームズ、マイクロオームズ....あなたにレコードセット/コレクションあなたはドリフトを取得

public class ProductsAndAveragePrice 
{ 
    public List<Products> Products {get;set;} 
    public decimal AveragePrice {get;set;} 
} 

public ProductsAndAveragePrice GetProducts(SearchCriteria criteria) 
{ 
     // pretend SQL String Based repo 
     var sb = new StringBuilder(); 
     sb.AppendLine("SELECT ProductName, Price "); 
     sb.AppendLine("FROM MyProductsTable"); 
     sb.AppendLine("WHERE Keyword = @keyword"); 
     sb.AppendLine("AND From >= @from"); 
     sb.AppendLine("AND To <= @to"); 

     // To do 
     // ...supply the parameters and execute the query 

     var products = new List<Product>(); 
     foreach(var row in rows) 
     { 
      products.Add(new Product() {Name = row["ProductName"], Price = row["Price"]}; 
     } 

     return new ProductsAndAveragePrice(){ 
       Products = products, 
       Price = products.Select(m => m.Price).Ave(); 
      }; 
} 

を返すことができるもの。

+0

私はeBay APIについて話しています – user3087269

+0

研究結果の売り上げを知るための考え方 – user3087269

+0

実行されたfindItemsByKeywordsの後の売り上げ数の取得方法。 ありがとう – user3087269

関連する問題