CategoryConfiguration Class
 Collapse AllExpand All        Code: All Code: Multiple Code: Visual Basic Code: C# Code: Visual C++ Code: J# Code: JScript 
CategoryConfiguration Class

Specifies the pre-loaded configuration of a Category object, including it's Child categories and products.

Namespace:  Microsoft.CommerceServer.Catalog
Assembly:  Microsoft.CommerceServer.Catalog (in Microsoft.CommerceServer.Catalog.dll)
Visual Basic (Declaration)
Public NotInheritable Class CategoryConfiguration _
    Inherits CatalogItemConfiguration
Visual Basic (Usage)
Dim instance As CategoryConfiguration
C#
public sealed class CategoryConfiguration : CatalogItemConfiguration
Visual C++
public ref class CategoryConfiguration sealed : public CatalogItemConfiguration
JScript
public final class CategoryConfiguration extends CatalogItemConfiguration

Configuration properties for enhanced pre-loading of properties. Used to pre-fetch data for this object and pre-loading category. For instance, it could contain changes and must include the identifying properties.

Specifies the pre-loaded configuration of a Category object, including it's Child categories and products. Configuration of a Product, allows you to specify configuration of variants (ignored for non product family products).

Specifies the view configuration of a Category object, including it's Child categories and products.

// This method demonstrates usage of the categoy configuration objects
internal void UseCategoryConfiguration(string catalogName, string categoryName)
{
  ProductCatalog productCatalog = this.catalogContext.GetCatalog(catalogName);
  // Use the category configuration object to configure the properties that are
  // initialized in the category object. These properties will be preloaded by the catalog server
  // All other properties will be lazy initialized.
  CategoryConfiguration categoryConfiguration = new CategoryConfiguration();
  categoryConfiguration.LoadChildProducts = true;
  categoryConfiguration.ChildProducts.SearchOptions = new CatalogSearchOptions();
  categoryConfiguration.ChildProducts.SearchOptions.ClassTypes = CatalogClassTypes.ProductClass | CatalogClassTypes.ProductFamilyClass;
  categoryConfiguration.ChildProducts.SearchOptions.SetPaging(1, 20);
  Category category = productCatalog.GetCategory(categoryName, categoryConfiguration);
  // Iterating the Product Collection
  foreach (Product product in category.ChildProducts)
  {
    // Accessing the display name of the product
    Console.WriteLine(product.DisplayName);
  }
  foreach (Category parentCategory in category.ParentCategories)
  {
    // Accessing the display name of the category
    Console.WriteLine(parentCategory.DisplayName);
  }
  // Accessing category relationships
  foreach (CatalogRelationshipsDataSet.CatalogRelationship relationship in category.RelatedCategories.CatalogRelationships)
  {
    Console.WriteLine(relationship.RelationshipName);
    Console.WriteLine(relationship.RelationshipDescription);
  }
} 
System..::.Object
  Microsoft.CommerceServer.Catalog..::.CatalogItemConfiguration
    Microsoft.CommerceServer.Catalog..::.CategoryConfiguration
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Page view tracker