private static void LogAssemblyLoaderException(string reason, ReflectionTypeLoadException ex, ILogger logger) { var sb = new System.Text.StringBuilder(reason + ": "); sb.AppendLine(ex.ToString()); if (ex.LoaderExceptions != null) { sb.AppendFormat("LoaderExceptions ({0} items): ", ex.LoaderExceptions.Length); foreach (var loaderException in ex.LoaderExceptions) { sb.AppendLine(loaderException.Message); } } var message = sb.ToString(); if (logger != null) { logger.Error(message); } else { Console.WriteLine(message); } sb.Clear(); }
public static void NullArgumentsNoNullPointerException() { ReflectionTypeLoadException rtle = new ReflectionTypeLoadException(null, null, "Null arguments"); Assert.NotNull(rtle.ToString()); Assert.NotNull(rtle.Message); Assert.Null(rtle.LoaderExceptions); Assert.Null(rtle.Types); }
private static void LogTypeLoadException(ReflectionTypeLoadException rtle, string assemblyName = null) { SnLog.WriteError(rtle.ToString(), properties: new Dictionary <string, object> { { "Assembly", assemblyName ?? "unknown" } }); foreach (var exc in rtle.LoaderExceptions) { SnLog.WriteError(exc); } }
private static string GetLoaderExceptions(ReflectionTypeLoadException exception) { var sb = new StringBuilder(); sb.AppendLine(exception.ToString()); foreach (var loaderException in exception.LoaderExceptions) { sb.AppendLine("- - - -").AppendLine(); sb.AppendLine(loaderException.ToString()); } return(sb.ToString()); }
public static void NullExceptionsNoNullPointerException() { Type[] types = new Type[1]; Exception[] exceptions = new Exception[1]; ReflectionTypeLoadException rtle = new ReflectionTypeLoadException(types, exceptions, "Null elements in Exceptions array"); Assert.NotNull(rtle.ToString()); Assert.NotNull(rtle.Message); Assert.Equal(1, rtle.LoaderExceptions.Length); Assert.Null(rtle.LoaderExceptions[0]); Assert.Equal(1, rtle.Types.Length); Assert.Null(rtle.Types[0]); }