Critical Error: Data Store Unavailable

The data store used by eCommerce Framework cannot be opened.


Resolution:
Please ensure that your data service is online and running and that the connection string in your web.config file is correct and make sure the key specified by
ConnnectionStringName exists in connectionStrings section.

To configure your connection string:

1. Open [Install Location of eCommerce Framework]\PublicStore\web.config

2. Within web.config find the configuration section (highlighted) below:

<configuration>
   <ClientConfig>
        <Settings ConnectionStringName="EcfSqlConnection" SubscriptionId="{SUBSCRIPTION_GUID}" 
CartKey="ShoppingCartKey" AffiliateKey="AffiliateKey" Expires="24"></Settings> 
   </ClientConfig> 
   ...

   <connectionStrings>
        <add name="EcfSqlConnection" connectionString="{connection string to your database}"/>
   </connectionStrings>
</configuration>
Error Message:
System.InvalidOperationException: Timeout expired. The timeout period elapsed prior to obtaining a connection from the pool. This may have occurred because all pooled connections were in use and max pool size was reached. at System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection) at System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory) at System.Data.SqlClient.SqlConnection.Open() at Mediachase.eCF.DataLayer.TransactionScope.Enlist(IDbCommand cmd, String connectionString, ConnectionDelegate connection) at Mediachase.eCF.DataLayer.Provider.SqlDataProvider.LoadTable(DataCommand command) at Mediachase.eCF.DataLayer._GlobalSetting.LoadAll() at Mediachase.eCF.BusLayer.Common.Configuration.SettingsManager.LoadHash() at Mediachase.eCF.BusLayer.Common.Configuration.SettingsManager.GetParamValue(String ParamName) at Mediachase.eCF.BusLayer.Common.Configuration.SettingsManager.GetBooleanValue(String ParamName, Boolean DefaultValue) at Mediachase.eCF.BusLayer.FrameworkContext.get_StoreClosed() at Mediachase.eCF.BusFacade.Engine.ServicePipeHelper.CheckSubscription(String SubscriptionId, IList`1& errorArray) at Mediachase.eCF.BusFacade.SiteNodeManager.SiteNodeLookup(SiteNodeLookup lookup) at Mediachase.eCF.ClientLib2.ClientCatalog.LookupPages(String[] pages, String[] responseGroups, ErrorsError[]& errors)

  For more information visit http://www.mediachase.com.