Fixes U4-1463 Unable to create an ISqlHelper from another connectionstring since
This commit is contained in:
@@ -39,7 +39,7 @@ namespace Umbraco.Tests.BusinessLogic
|
||||
private void ClearDatabase()
|
||||
{
|
||||
var databaseSettings = ConfigurationManager.ConnectionStrings[Core.Configuration.GlobalSettings.UmbracoConnectionName];
|
||||
var dataHelper = DataLayerHelper.CreateSqlHelper(databaseSettings.ConnectionString) as SqlCEHelper;
|
||||
var dataHelper = DataLayerHelper.CreateSqlHelper(databaseSettings.ConnectionString, false) as SqlCEHelper;
|
||||
|
||||
if (dataHelper == null)
|
||||
throw new InvalidOperationException("The sql helper for unit tests must be of type SqlCEHelper, check the ensure the connection string used for this test is set to use SQLCE");
|
||||
@@ -57,7 +57,7 @@ namespace Umbraco.Tests.BusinessLogic
|
||||
AppDomain.CurrentDomain.SetData("DataDirectory", TestHelper.CurrentAssemblyDirectory);
|
||||
|
||||
var databaseSettings = ConfigurationManager.ConnectionStrings[Core.Configuration.GlobalSettings.UmbracoConnectionName];
|
||||
var dataHelper = DataLayerHelper.CreateSqlHelper(databaseSettings.ConnectionString) as SqlCEHelper;
|
||||
var dataHelper = DataLayerHelper.CreateSqlHelper(databaseSettings.ConnectionString, false) as SqlCEHelper;
|
||||
|
||||
var installer = dataHelper.Utility.CreateInstaller();
|
||||
if (installer.CanConnect)
|
||||
|
||||
@@ -23,7 +23,7 @@ namespace Umbraco.Tests.TestHelpers
|
||||
public static void ClearDatabase()
|
||||
{
|
||||
var databaseSettings = ConfigurationManager.ConnectionStrings[Core.Configuration.GlobalSettings.UmbracoConnectionName];
|
||||
var dataHelper = DataLayerHelper.CreateSqlHelper(databaseSettings.ConnectionString) as SqlCEHelper;
|
||||
var dataHelper = DataLayerHelper.CreateSqlHelper(databaseSettings.ConnectionString, false) as SqlCEHelper;
|
||||
|
||||
if (dataHelper == null)
|
||||
throw new InvalidOperationException("The sql helper for unit tests must be of type SqlCEHelper, check the ensure the connection string used for this test is set to use SQLCE");
|
||||
@@ -41,7 +41,7 @@ namespace Umbraco.Tests.TestHelpers
|
||||
ClearDatabase();
|
||||
|
||||
var databaseSettings = ConfigurationManager.ConnectionStrings[Core.Configuration.GlobalSettings.UmbracoConnectionName];
|
||||
var dataHelper = DataLayerHelper.CreateSqlHelper(databaseSettings.ConnectionString);
|
||||
var dataHelper = DataLayerHelper.CreateSqlHelper(databaseSettings.ConnectionString, false);
|
||||
|
||||
var installer = dataHelper.Utility.CreateInstaller();
|
||||
if (installer.CanConnect)
|
||||
|
||||
@@ -6,6 +6,7 @@ using System.Web.UI.HtmlControls;
|
||||
using Umbraco.Core;
|
||||
using Umbraco.Core.Logging;
|
||||
using System.IO;
|
||||
using Umbraco.Core.Persistence;
|
||||
using umbraco.DataLayer;
|
||||
using umbraco.IO;
|
||||
|
||||
@@ -85,7 +86,7 @@ namespace umbraco.presentation.install.steps
|
||||
var databaseSettings = ConfigurationManager.ConnectionStrings[Umbraco.Core.Configuration.GlobalSettings.UmbracoConnectionName];
|
||||
if (databaseSettings != null)
|
||||
{
|
||||
var dataHelper = DataLayerHelper.CreateSqlHelper(databaseSettings.ConnectionString);
|
||||
var dataHelper = DataLayerHelper.CreateSqlHelper(databaseSettings.ConnectionString, false);
|
||||
connectionStringBuilder.ConnectionString = dataHelper.ConnectionString;
|
||||
|
||||
// Prepare data layer type
|
||||
|
||||
@@ -94,7 +94,7 @@ namespace umbraco.BusinessLogic
|
||||
ConfigurationManager.AppSettings.ContainsKey(umbracoDsn))
|
||||
connectionString = ConfigurationManager.AppSettings[umbracoDsn];
|
||||
|
||||
_sqlHelper = DataLayerHelper.CreateSqlHelper(connectionString);
|
||||
_sqlHelper = DataLayerHelper.CreateSqlHelper(connectionString, false);
|
||||
}
|
||||
catch(Exception ex)
|
||||
{
|
||||
|
||||
@@ -24,7 +24,7 @@ namespace umbraco.BusinessLogic
|
||||
try
|
||||
{
|
||||
var databaseSettings = ConfigurationManager.ConnectionStrings[Umbraco.Core.Configuration.GlobalSettings.UmbracoConnectionName];
|
||||
_sqlHelper = DataLayerHelper.CreateSqlHelper(databaseSettings.ConnectionString);
|
||||
_sqlHelper = DataLayerHelper.CreateSqlHelper(databaseSettings.ConnectionString, false);
|
||||
}
|
||||
catch { }
|
||||
}
|
||||
|
||||
@@ -387,7 +387,7 @@ namespace umbraco
|
||||
get
|
||||
{
|
||||
var databaseSettings = ConfigurationManager.ConnectionStrings[Umbraco.Core.Configuration.GlobalSettings.UmbracoConnectionName];
|
||||
var dataHelper = DataLayerHelper.CreateSqlHelper(databaseSettings.ConnectionString);
|
||||
var dataHelper = DataLayerHelper.CreateSqlHelper(databaseSettings.ConnectionString, false);
|
||||
|
||||
if (HttpContext.Current != null)
|
||||
{
|
||||
|
||||
@@ -14,9 +14,9 @@ namespace umbraco.cms.businesslogic.datatype
|
||||
public DataEditorSettingsStorage()
|
||||
{
|
||||
var databaseSettings = ConfigurationManager.ConnectionStrings[Umbraco.Core.Configuration.GlobalSettings.UmbracoConnectionName];
|
||||
var dataHelper = DataLayerHelper.CreateSqlHelper(databaseSettings.ConnectionString);
|
||||
var dataHelper = DataLayerHelper.CreateSqlHelper(databaseSettings.ConnectionString, false);
|
||||
|
||||
init(DataLayerHelper.CreateSqlHelper(dataHelper.ConnectionString));
|
||||
init(DataLayerHelper.CreateSqlHelper(dataHelper.ConnectionString, false));
|
||||
}
|
||||
|
||||
private void init(ISqlHelper connection)
|
||||
|
||||
@@ -41,12 +41,17 @@ namespace umbraco.DataLayer
|
||||
/// <returns>A new SQL helper.</returns>
|
||||
/// <remarks>This method will change to allow the addition of external SQL helpers.</remarks>
|
||||
public static ISqlHelper CreateSqlHelper(string connectionString)
|
||||
{
|
||||
return CreateSqlHelper(connectionString, true);
|
||||
}
|
||||
|
||||
public static ISqlHelper CreateSqlHelper(string connectionString, bool forceLegacyConnection)
|
||||
{
|
||||
/* check arguments */
|
||||
if (string.IsNullOrEmpty(connectionString))
|
||||
throw new ArgumentNullException("connectionString");
|
||||
|
||||
if (IsEmbeddedDatabase(connectionString) && connectionString.ToLower().Contains("SQLCE4Umbraco".ToLower()) == false)
|
||||
if (forceLegacyConnection == false && IsEmbeddedDatabase(connectionString) && connectionString.ToLower().Contains("SQLCE4Umbraco".ToLower()) == false)
|
||||
{
|
||||
// Input is : Datasource=|DataDirectory|Umbraco.sdf
|
||||
// Should be: datalayer=SQLCE4Umbraco.SqlCEHelper,SQLCE4Umbraco;data source=|DataDirectory|\Umbraco.sdf
|
||||
@@ -67,10 +72,10 @@ namespace umbraco.DataLayer
|
||||
throw new ArgumentException("Bad connection string.", "connectionString", ex);
|
||||
}
|
||||
|
||||
var databaseSettings = ConfigurationManager.ConnectionStrings[Umbraco.Core.Configuration.GlobalSettings.UmbracoConnectionName];
|
||||
|
||||
if (databaseSettings != null)
|
||||
SetDataHelperNames(databaseSettings);
|
||||
var connectionStringSettings = ConfigurationManager.ConnectionStrings[Umbraco.Core.Configuration.GlobalSettings.UmbracoConnectionName];
|
||||
|
||||
if (forceLegacyConnection == false && connectionStringSettings != null)
|
||||
SetDataHelperNames(connectionStringSettings);
|
||||
else
|
||||
SetDataHelperNamesLegacyConnectionString(connectionStringBuilder);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user