Multi-Channel Commerce Foundation Introduction

The Commerce Server 2009 Commerce Foundation encapsulates the run-time API set from Commerce Server 2007 and debuts the next-generation programming model for Commerce Server. The new Commerce Foundation simplifies and unifies the programming model, and is optimized for consumer-oriented multi-channel retailing as it pervasively establishes and maintains the notion of medium/device, brand, and locale. 

The Commerce Foundation benefits developers by:

  • Reducing developer ramp-up time by providing a consistent interface across the Commerce Server 2009 run-time environment

  • Providing a clear separation of presentation logic and business logic, allowing for multiple presentation support

  • Providing an extensibility model that lets developers more easily enhance functionality both for general and business-specific purposes

  • Supporting migration of existing Commerce Server 2007 sites to Commerce Server 2009 by allowing Commerce Server 2009 sites to co-exist with an existing Commerce Server 2007 implementation

The following figure shows the high-level Commerce Server 2009 architecture:

Dd442342.High_level_CS2009_Architecture(en-US,CS.90).gif

Commerce Entities

Commerce Server 2009 exposes a set of models, known as commerce entities (such as products or baskets) to represent the conceptual view of e-commerce. You can use the common commerce entities across all Commerce Server Core Systems. These systems include Catalog, Orders, Marketing, and Profiles. When you invoke the Commerce Foundation you perform an action (operations such as create, update, delete, and query) against a commerce entity.

These model definitions are based on a common class CommerceEntity, and therefore, have the same logical representation defined by properties and relationships through a model definition. Commerce Server 2009 exposes a single service that contains a single ProcessRequest method. As part of the input, you will specify a request, and you will always receive a response. The general pattern for using the Commerce Foundation is to create a request comprising of one or more operations, submit the request to Commerce Server 2009 for processing, and then interpret the results returned by Commerce Server 2009.

Data Types

The Commerce Foundation uses a restricted set of native .NET Framework data types and places some additional interpretation on them. Commerce Server 2009 does not expose proprietary Commerce Server 2007 data types to avoid creating a dependency on CrossTier type’s assemblies and DataSets.

Operation-based Foundation

By using the Commerce Foundation, you can access or manipulate data by using one or more of these operations:

  • Query

  • Create

  • Update

  • Delete

The general pattern of the Commerce Foundation is:

  1. Create a request comprising one or more operations on specified items

  2. Submit the request to the Commerce Foundation service for processing

  3. Interpret the result returned by the service

See Also

Other Resources

Developing with the Multi-Channel Commerce Foundation