Если у вас есть контроль над интерфейсом IContext
, добавьте IDisposable
в список интерфейсов, от которых он наследуется. Если нет, опустите IContext
, чтобы получить IDisposable ...
var context = ninject.Get<IContext>();
using ((IDisposable)context)
{
}
У вас также есть возможность изменить интерфейс IContext
, чтобы сделать это по композиции, если вы контролируете IContext
...
public interface IContext
{
// ...
IDisposable GetUsageHandle();
}
var context = ninject.Get<IContext>();
using (context.GetUsageHandle())
{
}