Microsoftコマースサーバー2009を使用しているSharepoint2007インターネットサイトがあります。
「最近追加された商品」または「注目の商品」のリストを表示する必要があります。これらは「すべての」カタログからの製品を表示します。
そのような要件を実装するための最良のアプローチは何ですか?
Microsoftコマースサーバー2009を使用しているSharepoint2007インターネットサイトがあります。
「最近追加された商品」または「注目の商品」のリストを表示する必要があります。これらは「すべての」カタログからの製品を表示します。
そのような要件を実装するための最良のアプローチは何ですか?
これを実現するには、 LastModifiedフィールドを使用して製品検索を実行し、最近作成された製品を日付でフィルタリングします。
すべてのカタログを検索する必要があると言ったので、検索するカタログを設定する必要があります。
以下のコード スニペットが必要なものだと思います。検索結果を取得するには、全文検索を実行する必要があることに注意してください。
var queryBuilder =
new CommerceQuery<Product, CommerceCatalogFullTextSearchBuilder>();
queryBuilder.SearchCriteria.FullTextSearchType = CommerceFullTextSearchType.FreeText;
queryBuilder.SearchCriteria.Catalogs.Add("MyCatalogName1");
queryBuilder.SearchCriteria.Catalogs.Add("MyCatalogName2");
queryBuilder.SearchCriteria.Catalogs.Add("MyCatalogName3");
queryBuilder.SearchCriteria.WhereClause = "LastModified > '2010-10-01'";
CommerceQueryOperationResponse response =
(CommerceQueryOperationResponse)new OperationServiceAgent()
.ProcessRequest(requestContext, queryBuilder.ToRequest())
.OperationResponses[0];
List<Product> products = new List<Product>();
if (response.CommerceEntities != null && response.CommerceEntities.Count > 0)
{
foreach(var p in response.CommerceEntities)
{
products.Add((Product)p);
}
}
return products;