using System;
using System.Collections;
using System.Collections.Generic;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using Microsoft.Commerce.Common.MessageBuilders;
using Microsoft.Commerce.Contracts;
using Microsoft.Commerce.Contracts.Messages;
using Microsoft.CommerceServer.Catalog;
using Microsoft.CommerceServer.Runtime;
namespace ASPNet3346
{
public partial class GetAProduct : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void btnCS2007_Click(object sender, EventArgs e)
{
GetCatalog(CommerceContext.Current.CatalogSystem, "Adventure Works Catalog");
}
private void GetCatalog(CatalogContext context, string catalogName)
{
//Get the catalog with the name specified in catalogName.
// Return the catalog data in English, as specified by "en-US");
ProductCatalog productCatalog = (ProductCatalog)context.GetCatalog(catalogName, "en-US");
Response.Write(productCatalog.Name);
Response.Write(productCatalog.IdentifyingProductProperty);
}
protected void btnCS2009_Click(object sender, EventArgs e)
{
var productQuery = new CommerceQuery("Product");
productQuery.SearchCriteria.Model.Properties["CatalogId"] = "Adventure Works Catalog";
productQuery.SearchCriteria.Model.Id = "AW200-12";
productQuery.Model.Properties.Add("Id");
productQuery.Model.Properties.Add("DisplayName");
productQuery.Model.Properties.Add("Description");
productQuery.Model.Properties.Add("ListPrice");
{
var queryVariants = new CommerceQueryRelatedItem("Variants", "Variant");
queryVariants.SearchCriteria.SortProperties = new List();
queryVariants.SearchCriteria.SortProperties.Add(new CommerceSortProperty("Variant", "ProductColor", SortDirection.Ascending));
queryVariants.SearchCriteria.FirstItemIndex = 0;
queryVariants.SearchCriteria.ReturnTotalItemCount = true;
queryVariants.Model.Properties.Add("Id");
queryVariants.Model.Properties.Add("VariantCode");
queryVariants.Model.Properties.Add("ProductColor");
productQuery.RelatedOperations.Add(queryVariants);
}
CommerceResponse response = CommerceFoundationServiceAgent.Execute(productQuery);
// Handle Responses
CommerceQueryOperationResponse queryResponse = response.OperationResponses.Single() as CommerceQueryOperationResponse;
CommerceEntity product = queryResponse.CommerceEntities.SingleOrDefault();
Response.Write(product.Id);
}
}
}
Attached Source Code : ASPNet3346
