Кэширование DbContext
Я знаю, что кэширование DbContext не очень хорошая идея. Но я хотел бы сделать это хорошо. Что вы думаете об этом пути?
public class Context : DbContext
{
private Context()
{
}
private static WeakReference<Context> _cachedContext;
public Context Instance
{
get
{
Context context;
if (!_cachedContext.TryGetTarget(out context))
{
context = new Context();
_cachedContext.SetTarget(context);
}
return context;
}
}
}
Этот код планируется использовать без IDisposable.Dispose вызова на стороне клиента. Какие проблемы это может вызвать, кроме одноэлементного (анти) паттерна? Благодарю.