Additional fixes for U4-1845 to maintain compatibility for people using the

wrong connection string
This commit is contained in:
Sebastiaan Janssen
2013-03-06 14:09:01 -01:00
parent 0c77114cd5
commit b7dc052cb2
3 changed files with 8 additions and 6 deletions

View File

@@ -149,7 +149,9 @@ namespace SqlCE4Umbraco
var dataDirectory = AppDomain.CurrentDomain.GetData("DataDirectory") as string;
if (!string.IsNullOrEmpty(dataDirectory))
{
path = path.Replace("|DataDirectory|", dataDirectory + System.IO.Path.DirectorySeparatorChar);
path = path.Contains(@"|\")
? path.Replace("|DataDirectory|", dataDirectory)
: path.Replace("|DataDirectory|", dataDirectory + System.IO.Path.DirectorySeparatorChar);
}
}

View File

@@ -82,8 +82,8 @@ namespace umbraco.presentation.install.steps
var sqlCeDatabaseExists = false;
if (dbIsSqlCe)
{
var datasource = databaseSettings.ConnectionString.Replace("|DataDirectory|", AppDomain.CurrentDomain.GetData("DataDirectory").ToString() + Path.DirectorySeparatorChar);
var filePath = datasource.Replace("Datasource=", string.Empty);
var datasource = databaseSettings.ConnectionString.Replace("|DataDirectory|", AppDomain.CurrentDomain.GetData("DataDirectory").ToString());
var filePath = datasource.Replace("Data Source=", string.Empty);
sqlCeDatabaseExists = File.Exists(filePath);
}

View File

@@ -53,11 +53,11 @@ namespace umbraco.DataLayer
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
connectionString = connectionString.Replace("Datasource", "Data Source");
connectionString = connectionString.Replace("Datasource", "data source");
if(connectionString.Contains(@"|\") == false)
connectionString = connectionString.Insert(connectionString.LastIndexOf('|') + 1, "\\");
connectionString = string.Format("datalayer=SQLCE4Umbraco.SqlCEHelper,SQLCE4Umbraco;{0}", connectionString);
}