DotShoppingCart Suite comes with a separate windows service called OrderPipeline. If you don't want to run OrderPipeline as a windows service, here is how you can move it inside the web application.
1. Copy the following lines into configSections of web.config.
<section name="orderPipelineServiceConfiguration" type="DotShoppingCart.OpenSource.Core.OrderPipelineServiceConfigurationSection, DotShoppingCart.OpenSource.Core"/>
<section name="taskConfiguration" type="DotShoppingCart.OpenSource.Core.TaskConfigurationSection, DotShoppingCart.OpenSource.Core"/>
2. Copy the following lines into web.config
<orderPipelineServiceConfiguration defaultProvider="">
<providers>
<!-- name must match with the entries in DSC_OrderPipeline_Processor_lkp, DSC_Order_Status_lkp -->
<add name="OrderConfirmationEmail" type="DotShoppingCart.Commercial.OrderPipeline.ComOrderEmailProcessorProvider, DotShoppingCart.Commercial.OrderPipeline" emailTemplate="OrderConfirmation" />
<add name="CreditCardAuthorization" type="DotShoppingCart.OpenSource.OrderPipeline.CreditCardProcessorProvider, DotShoppingCart.OpenSource.OrderPipeline" action="Authorization" />
<add name="CreditCardCapture" type="DotShoppingCart.OpenSource.OrderPipeline.CreditCardProcessorProvider, DotShoppingCart.OpenSource.OrderPipeline" action="Capture" />
<add name="PaypalExpressCapture" type="DotShoppingCart.OpenSource.OrderPipeline.PaypalExpressProcessorProvider, DotShoppingCart.OpenSource.OrderPipeline" action="Capture" />
<add name="OrderCompleteEmail" type="DotShoppingCart.Commercial.OrderPipeline.ComOrderEmailProcessorProvider, DotShoppingCart.Commercial.OrderPipeline" emailTemplate="OrderComplete" />
<add name="GoogleCheckoutCapture" type="DotShoppingCart.Commercial.OrderPipeline.GoogleCheckoutProcessorProvider, DotShoppingCart.Commercial.OrderPipeline" action="Capture" />
<add name="CreateGiftCertificate" type="DotShoppingCart.Commercial.OrderPipeline.CreateGiftCertificateProcessorProvider, DotShoppingCart.Commercial.OrderPipeline" />
<add name="RecurringBillingUpdate" type="DotShoppingCart.Commercial.OrderPipeline.RecurringBillingUpdateProcessorProvider, DotShoppingCart.Commercial.OrderPipeline" />
<add name="GoogleCheckoutShipAndArchive" type="DotShoppingCart.Commercial.OrderPipeline.GoogleCheckoutProcessorProvider, DotShoppingCart.Commercial.OrderPipeline" action="ShipAndArchive" />
<add name="RecurringInvoiceEmail" type="DotShoppingCart.Commercial.OrderPipeline.ComOrderEmailProcessorProvider, DotShoppingCart.Commercial.OrderPipeline" emailTemplate="RecurringInvoice" />
<add name="RecurringOrderProcess" type="DotShoppingCart.Commercial.OrderPipeline.RecurringOrderProcessorProvider, DotShoppingCart.Commercial.OrderPipeline" />
</providers>
</orderPipelineServiceConfiguration>
<taskConfiguration defaultProvider="">
<providers>
<add name="DataRefresh" type="DotShoppingCart.OpenSource.OrderPipeline.DataRefreshTaskProvider, DotShoppingCart.OpenSource.OrderPipeline" />
<add name="EmailCampaign" type="DotShoppingCart.Commercial.OrderPipeline.EmailCampaignTaskProvider, DotShoppingCart.Commercial.OrderPipeline" dailyMaxCount="5000" />
<add name="DailyCleanup" type="DotShoppingCart.Commercial.OrderPipeline.DailyCleanupTaskProvider, DotShoppingCart.Commercial.OrderPipeline" taskRunInterval="1440" startat="160" />
<add name="TopSellerReset" type="DotShoppingCart.Commercial.OrderPipeline.TopSellerResetTaskProvider, DotShoppingCart.Commercial.OrderPipeline" taskRunInterval="43200" startat="200" />
</providers>
</taskConfiguration>
3. Change Global.asax
Add the following line
<%@ Import namespace="DotShoppingCart.OpenSource.OrderPipeline" %>
Change the following methods
void Application_Start(object sender, EventArgs e) {
OrderPipelineController.Start();
}
void Application_End(object sender, EventArgs e) {
OrderPipelineController.Stop();
}
4. Copy *.dll from OrderPipeline directory to web\bin directory