Отображение списка "Избранные товары" или "Недавно добавленные товары" на сайте SharePoint с коммерческими сервисами

У меня есть интернет-сайт Sharepoint 2007, использующий Microsoft Commerce Server 2009.

Мне нужно показать список "Недавно добавленных продуктов" или "рекомендуемых продуктов". На них будут показаны товары из "всех" каталогов.

Каков наилучший подход для реализации такого требования?

1 ответ

Решение

Чтобы добиться этого, вы можете просто запустить поиск товаров, используя поле 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;
Другие вопросы по тегам