diff --git a/src/Umbraco.Core/BindingRedirects.cs b/src/Umbraco.Core/BindingRedirects.cs
new file mode 100644
index 0000000000..994f9ab984
--- /dev/null
+++ b/src/Umbraco.Core/BindingRedirects.cs
@@ -0,0 +1,41 @@
+using System;
+using System.Reflection;
+using System.Text.RegularExpressions;
+using System.Web;
+using Umbraco.Core;
+
+[assembly: PreApplicationStartMethod(typeof(BindingRedirects), "Initialize")]
+
+namespace Umbraco.Core
+{
+ ///
+ /// Manages any assembly binding redirects that cannot be done via config
+ ///
+ public class BindingRedirects
+ {
+ public static void Initialize()
+ {
+ // this only gets called when an assembly can't be resolved
+ AppDomain.CurrentDomain.AssemblyResolve += CurrentDomain_AssemblyResolve;
+ }
+
+ private static readonly Regex Log4NetAssemblyPattern = new Regex("log4net, Version=([\\d\\.]+?), Culture=neutral, PublicKeyToken=null", RegexOptions.Compiled);
+ private const string Log4NetReplacement = "log4net, Version=1.2.15.0, Culture=neutral, PublicKeyToken=669e0ddf0bb1aa2a";
+
+ ///
+ /// This is used to do an assembly binding redirect of log4net if it does not exist in the web.config
+ ///
+ ///
+ ///
+ ///
+ private static Assembly CurrentDomain_AssemblyResolve(object sender, ResolveEventArgs args)
+ {
+ if (Log4NetAssemblyPattern.IsMatch(args.Name) && args.Name != Log4NetReplacement)
+ {
+ return Assembly.Load(Log4NetAssemblyPattern.Replace(args.Name, Log4NetReplacement));
+ }
+
+ return null;
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/Umbraco.Core/Umbraco.Core.csproj b/src/Umbraco.Core/Umbraco.Core.csproj
index 3a53f273f4..dab5da81d3 100644
--- a/src/Umbraco.Core/Umbraco.Core.csproj
+++ b/src/Umbraco.Core/Umbraco.Core.csproj
@@ -52,8 +52,8 @@
..\packages\ImageProcessor.2.5.1\lib\net45\ImageProcessor.dll
-
- ..\packages\log4net-mediumtrust.2.0.0\lib\log4net.dll
+
+ ..\packages\log4net.2.0.5\lib\net45-full\log4net.dll
..\packages\Microsoft.AspNet.Identity.Core.2.2.1\lib\net45\Microsoft.AspNet.Identity.Core.dll
@@ -131,6 +131,7 @@
+
diff --git a/src/Umbraco.Core/packages.config b/src/Umbraco.Core/packages.config
index 221e4063f6..451597ef66 100644
--- a/src/Umbraco.Core/packages.config
+++ b/src/Umbraco.Core/packages.config
@@ -3,7 +3,7 @@
-
+
diff --git a/src/Umbraco.Tests/Umbraco.Tests.csproj b/src/Umbraco.Tests/Umbraco.Tests.csproj
index 9bb433f59b..93c4524801 100644
--- a/src/Umbraco.Tests/Umbraco.Tests.csproj
+++ b/src/Umbraco.Tests/Umbraco.Tests.csproj
@@ -65,8 +65,8 @@
..\packages\SharpZipLib.0.86.0\lib\20\ICSharpCode.SharpZipLib.dll
-
- ..\packages\log4net-mediumtrust.2.0.0\lib\log4net.dll
+
+ ..\packages\log4net.2.0.5\lib\net45-full\log4net.dll
..\packages\Lucene.Net.2.9.4.1\lib\net40\Lucene.Net.dll
diff --git a/src/Umbraco.Tests/packages.config b/src/Umbraco.Tests/packages.config
index b71ba7a170..733d653401 100644
--- a/src/Umbraco.Tests/packages.config
+++ b/src/Umbraco.Tests/packages.config
@@ -3,7 +3,7 @@
-
+
diff --git a/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj b/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj
index 540f008fc8..db2c91b0ee 100644
--- a/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj
+++ b/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj
@@ -142,9 +142,8 @@
..\packages\ImageProcessor.Web.4.8.0\lib\net45\ImageProcessor.Web.dll
True
-
- False
- ..\packages\log4net-mediumtrust.2.0.0\lib\log4net.dll
+
+ ..\packages\log4net.2.0.5\lib\net45-full\log4net.dll
False
diff --git a/src/Umbraco.Web.UI/packages.config b/src/Umbraco.Web.UI/packages.config
index 629438762f..41cdd7bfb3 100644
--- a/src/Umbraco.Web.UI/packages.config
+++ b/src/Umbraco.Web.UI/packages.config
@@ -8,7 +8,7 @@
-
+
diff --git a/src/Umbraco.Web.UI/web.Template.Debug.config b/src/Umbraco.Web.UI/web.Template.Debug.config
index 9ad3174a28..68a45ff299 100644
--- a/src/Umbraco.Web.UI/web.Template.Debug.config
+++ b/src/Umbraco.Web.UI/web.Template.Debug.config
@@ -413,6 +413,13 @@
+
+
+
+
+
+
diff --git a/src/Umbraco.Web.UI/web.Template.config b/src/Umbraco.Web.UI/web.Template.config
index 10c64797f4..e9a1624b70 100644
--- a/src/Umbraco.Web.UI/web.Template.config
+++ b/src/Umbraco.Web.UI/web.Template.config
@@ -425,7 +425,10 @@
-
+
+
+
+
diff --git a/src/umbraco.datalayer/packages.config b/src/umbraco.datalayer/packages.config
index 7cabfc99ad..3537761ce9 100644
--- a/src/umbraco.datalayer/packages.config
+++ b/src/umbraco.datalayer/packages.config
@@ -1,6 +1,5 @@
-
\ No newline at end of file
diff --git a/src/umbraco.datalayer/umbraco.datalayer.csproj b/src/umbraco.datalayer/umbraco.datalayer.csproj
index ab86b3532c..479d1cafe7 100644
--- a/src/umbraco.datalayer/umbraco.datalayer.csproj
+++ b/src/umbraco.datalayer/umbraco.datalayer.csproj
@@ -68,9 +68,6 @@
false
-
- ..\packages\log4net-mediumtrust.2.0.0\lib\log4net.dll
-
..\packages\Microsoft.ApplicationBlocks.Data.1.0.1559.20655\lib\Microsoft.ApplicationBlocks.Data.dll