Merge remote-tracking branch 'origin/netcore/dev' into netcore/feature/remove_current_iohelper

# Conflicts:
#	src/Umbraco.Abstractions/Configuration/ConfigsExtensions.cs
#	src/Umbraco.Configuration/GlobalSettings.cs
#	src/Umbraco.Tests/Persistence/Repositories/ScriptRepositoryTest.cs
#	src/Umbraco.Tests/Persistence/Repositories/StylesheetRepositoryTest.cs
#	src/Umbraco.Tests/PublishedContent/NuCacheChildrenTests.cs
#	src/Umbraco.Tests/PublishedContent/NuCacheTests.cs
#	src/Umbraco.Tests/TestHelpers/TestHelper.cs
This commit is contained in:
Bjarke Berg
2019-11-19 08:13:35 +01:00
279 changed files with 1557 additions and 1190 deletions

View File

@@ -1,5 +1,4 @@
using System;
using System.Configuration;
using System.Data.SqlServerCe;
using System.IO;
using System.Linq;
@@ -7,7 +6,6 @@ using System.Xml.Linq;
using Umbraco.Core.Composing;
using Umbraco.Core.Configuration;
using Umbraco.Core.Exceptions;
using Umbraco.Core.IO;
using Umbraco.Core.Logging;
using Umbraco.Core.Migrations.Upgrade;
using Umbraco.Core.Persistence;
@@ -340,35 +338,6 @@ namespace Umbraco.Core.Migrations.Install
attribute.Value = value;
}
internal bool IsConnectionStringConfigured(ConnectionStringSettings databaseSettings)
{
var dbIsSqlCe = false;
if (databaseSettings?.ProviderName != null)
dbIsSqlCe = databaseSettings.ProviderName == Constants.DbProviderNames.SqlCe;
var sqlCeDatabaseExists = false;
if (dbIsSqlCe)
{
var parts = databaseSettings.ConnectionString.Split(new[] { ';' }, StringSplitOptions.RemoveEmptyEntries);
var dataSourcePart = parts.FirstOrDefault(x => x.InvariantStartsWith("Data Source="));
if (dataSourcePart != null)
{
var datasource = dataSourcePart.Replace("|DataDirectory|", AppDomain.CurrentDomain.GetData("DataDirectory").ToString());
var filePath = datasource.Replace("Data Source=", string.Empty);
sqlCeDatabaseExists = File.Exists(filePath);
}
}
// Either the connection details are not fully specified or it's a SQL CE database that doesn't exist yet
if (databaseSettings == null
|| string.IsNullOrWhiteSpace(databaseSettings.ConnectionString) || string.IsNullOrWhiteSpace(databaseSettings.ProviderName)
|| (dbIsSqlCe && sqlCeDatabaseExists == false))
{
return false;
}
return true;
}
#endregion
#region Database Schema

View File

@@ -1,6 +1,6 @@
using System;
using System.Configuration;
using Semver;
using Umbraco.Core.Composing;
using Umbraco.Core.Configuration;
using Umbraco.Core.Migrations.Upgrade.Common;
using Umbraco.Core.Migrations.Upgrade.V_8_0_0;
@@ -17,6 +17,7 @@ namespace Umbraco.Core.Migrations.Upgrade
private const string InitPrefix = "{init-";
private const string InitSuffix = "}";
private IUmbracoVersion UmbracoVersion => Current.UmbracoVersion;
/// <summary>
/// Initializes a new instance of the <see cref="UmbracoPlan"/> class.
/// </summary>
@@ -61,7 +62,7 @@ namespace Umbraco.Core.Migrations.Upgrade
get
{
// no state in database yet - assume we have something in web.config that makes some sense
if (!SemVersion.TryParse(ConfigurationManager.AppSettings[Constants.AppSettings.ConfigurationStatus], out var currentVersion))
if (!SemVersion.TryParse(Current.Configs.Global().ConfigurationStatus, out var currentVersion))
throw new InvalidOperationException($"Could not get current version from web.config {Constants.AppSettings.ConfigurationStatus} appSetting.");
// cannot go back in time