У меня был следующий код в v4.n .NET Framework
/// <summary>
/// Return the Entry Assembly for both windows or ASP.NET
/// runtimes
/// </summary>
private static Assembly GetEntryAssembly()
{
if (HttpContext.Current == null ||
HttpContext.Current.ApplicationInstance == null)
{
return Assembly.GetEntryAssembly();
}
var type = HttpContext.Current.ApplicationInstance.GetType();
while (type != null && type.Namespace == "ASP")
{
type = type.BaseType;
}
return type == null ? null : type.Assembly;
}
Это работало нормально и означало, что его можно использовать как из консоли / exe, так и из приложения ASP.NET.
Теперь мы переносим код на .NET Core (Standard), и теперь HttpContext.Current был удален в пользу автоматического внедрения зависимостей.
Однако это будет означать, что простой lib, которая хочет знать только сборку записи, внезапно придется узнать о IHttpContextAccessor.Это определенно будет пахнуть кодом!
В новом мире .Core, какой лучший способ заменить эту функциональность?
Спасибо
Стив