Создайте собственную абстракцию вокруг контекста, а затем внедрите конкретную версию в класс в зависимости от среды, например,
interface IContextWrapper
{
}
class HttpContextWrapper : IContextWrapper
{
}
class OperationContextWrapper : IContextWrapper
{
}
class UnitTestWrapper : IContextWrapper
{
}
class MyContextUser
{
private readonly IContextWrapper contextWrapper;
public MyContextUser(IContextWrapper contextWrapper)
{
this.contextWrapper = contextWrapper;
}
}
Как вы можете видеть, это дает дополнительное преимущество, позволяя сделать вашу единицу класса тестируемой