Class CartProvider
This type/member supports the EPiServer infrastructure and is not intended to be used directly from your code.
Handles loading and persistence for ICart
Inheritance
Inherited Members
Namespace: EPiServer.Commerce.Order.Internal
Assembly: EPiServer.Business.Commerce.dll
Version: 13.30.0Syntax
public class CartProvider : ICartProvider, IOrderProvider<ICart>
Constructors
CartProvider(ICurrentMarket, IOrderGroupCalculator, ReferenceConverter, IContentLoader, ICatalogSystem, IRelationRepository, ServiceAccessor<SiteContext>, LanguageResolver, CustomerContext)
Creates an instance of CartProvider
Declaration
public CartProvider(ICurrentMarket currentMarket, IOrderGroupCalculator orderGroupCalculator, ReferenceConverter referenceConverter, IContentLoader contentLoader, ICatalogSystem catalogSystem, IRelationRepository relationRepository, ServiceAccessor<SiteContext> siteContextAccessor, LanguageResolver languageResolver, CustomerContext customerContext)
Parameters
Type | Name | Description |
---|---|---|
ICurrentMarket | currentMarket | The current market service |
IOrderGroupCalculator | orderGroupCalculator | The calculator that used to calculate the totals for an order group. |
ReferenceConverter | referenceConverter | The reference converter. |
EPiServer.IContentLoader | contentLoader | The content loader. |
ICatalogSystem | catalogSystem | The catalog system. |
IRelationRepository | relationRepository | The relation repository. |
EPiServer.ServiceLocation.ServiceAccessor<SiteContext> | siteContextAccessor | The site context accessor. |
EPiServer.Globalization.LanguageResolver | languageResolver | The language resolved. |
CustomerContext | customerContext | The customer context. |
CartProvider(ICurrentMarket, IOrderGroupTotalsCalculator, ReferenceConverter, IContentLoader, ICatalogSystem, IRelationRepository, ServiceAccessor<SiteContext>, LanguageResolver, CustomerContext)
Creates an instance of CartProvider
Declaration
[Obsolete("This constructor is no longer used, use constructor with IOrderGroupCalculator instead. Will remain at least until May 2019.")]
public CartProvider(ICurrentMarket currentMarket, IOrderGroupTotalsCalculator orderGroupTotalsCalculator, ReferenceConverter referenceConverter, IContentLoader contentLoader, ICatalogSystem catalogSystem, IRelationRepository relationRepository, ServiceAccessor<SiteContext> siteContextAccessor, LanguageResolver languageResolver, CustomerContext customerContext)
Parameters
Type | Name | Description |
---|---|---|
ICurrentMarket | currentMarket | The current market service |
IOrderGroupTotalsCalculator | orderGroupTotalsCalculator | The calculator that used to calculate the totals for an order group. |
ReferenceConverter | referenceConverter | The reference converter. |
EPiServer.IContentLoader | contentLoader | The content loader. |
ICatalogSystem | catalogSystem | The catalog system. |
IRelationRepository | relationRepository | The relation repository. |
EPiServer.ServiceLocation.ServiceAccessor<SiteContext> | siteContextAccessor | The site context accessor. |
EPiServer.Globalization.LanguageResolver | languageResolver | The language resolved. |
CustomerContext | customerContext | The customer context. |
Methods
Create(Guid, String)
Creates an ICart for a specific customer.
Declaration
public ICart Create(Guid customerId, string name)
Parameters
Type | Name | Description |
---|---|---|
System.Guid | customerId | The customer id |
System.String | name | The order name |
Returns
Type | Description |
---|---|
ICart | An ICart. |
Delete(OrderReference)
Deletes an order using an order reference.
Declaration
public void Delete(OrderReference orderLink)
Parameters
Type | Name | Description |
---|---|---|
OrderReference | orderLink | The order link. |
Load(Guid, String)
Loads the orders.
Declaration
public IEnumerable<ICart> Load(Guid customerId, string name)
Parameters
Type | Name | Description |
---|---|---|
System.Guid | customerId | The customer id. |
System.String | name | The name of the order. The name is not unique for each order, instead it's suppose to differentiate orders of the same type. |
Returns
Type | Description |
---|---|
System.Collections.Generic.IEnumerable<ICart> | The System.Collections.Generic.IEnumerable<T>. |
Remarks
If the name
is null or empty, it returns all carts of the customer.
Load(Int32)
Loads the order
Declaration
public ICart Load(int orderGroupId)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | orderGroupId | The order group id |
Returns
Type | Description |
---|---|
ICart | The ICart. |
Save(ICart)
Saves the specified ICart.
Declaration
public OrderReference Save(ICart cart)
Parameters
Type | Name | Description |
---|---|---|
ICart | cart | The cart. |
Returns
Type | Description |
---|---|
OrderReference | An OrderReference. |
SaveAsPaymentPlan(ICart)
Saves the ICart as IPaymentPlan.
Declaration
public IPaymentPlan SaveAsPaymentPlan(ICart cart)
Parameters
Type | Name | Description |
---|---|---|
ICart | cart | The cart. |
Returns
Type | Description |
---|---|
IPaymentPlan | An IPaymentPlan. |
SaveAsPurchaseOrder(ICart)
Saves the ICart as IPurchaseOrder.
Declaration
public IPurchaseOrder SaveAsPurchaseOrder(ICart cart)
Parameters
Type | Name | Description |
---|---|---|
ICart | cart | The cart. |
Returns
Type | Description |
---|---|
IPurchaseOrder | An IPurchaseOrder. |