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.Data.SqlClient.SqlException: Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding. at System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject) 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) in C:\DevLocal\Websites\BT_SD_ECF\Mediachase_4_1_2\SupportProjects\Data\DataProvider\TransactionScope.cs:line 101 at Mediachase.eCF.DataLayer.Provider.SqlDataProvider.LoadTable(DataCommand command) in C:\DevLocal\Websites\BT_SD_ECF\Mediachase_4_1_2\SupportProjects\Data\SqlDataProvider\SqlDataProvider.cs:line 251 at Mediachase.eCF.DataLayer.Provider.DataService.LoadTable(DataCommand command) in C:\DevLocal\Websites\BT_SD_ECF\Mediachase_4_1_2\SupportProjects\Data\DataProvider\DataService.cs:line 52 at Mediachase.eCF.DataLayer._ECFService.LoadByPrimaryKey(Int32 ServiceId) in C:\DevLocal\Websites\BT_SD_ECF\Mediachase_4_1_2\BusinessLayer\BusinessLibrary\Data\Generated\_ECFService.cs:line 75 at Mediachase.eCF.BusLayer.Common.Services.BaseECFService.get_CurrentEcfService() in C:\DevLocal\Websites\BT_SD_ECF\Mediachase_4_1_2\BusinessLayer\BusinessLibrary\Orders\Services\IECFService.cs:line 62 at Mediachase.eCF.BusLayer.Common.Services.BaseECFService.timer_Callback(Object state) in C:\DevLocal\Websites\BT_SD_ECF\Mediachase_4_1_2\BusinessLayer\BusinessLibrary\Orders\Services\IECFService.cs:line 139

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