/// <summary> /// Returns a variant for the given parent product which consists of the specified options. /// If multiple variants use the given subset of options, one of them is returned (based on setting of the database engine). /// </summary> /// <param name="productId">SKU identifier of the variant's parent product.</param> /// <param name="optionIds">Collection of the variant's product options.</param> /// <returns><see cref="ProductVariant"/> object representing a product variant assembled from the specified information. Returns <c>null</c> if such variant does not exist.</returns> public ProductVariant GetByProductIdAndOptions(int productId, IEnumerable <int> optionIds) { var variantSKU = VariantHelper.GetProductVariant(productId, new ProductAttributeSet(optionIds)); if (variantSKU == null) { return(null); } return(new ProductVariant(variantSKU.SKUID)); }
// Displaying product variants on MVC sites private object DummyEcommerceMethod4() { int productId = 0; IEnumerable <int> optionIds = new List <int>() { 1, 2, 3 }; //DocSection:VariantFromOptionIds // Retrieves a product variant from a given product ID and a collection of option IDs var variantSKU = VariantHelper.GetProductVariant(productId, new ProductAttributeSet(optionIds)); if (variantSKU == null) { return(null); } return(variantSKU); //EndDocSection:VariantFromOptionIds }