У меня есть объект в EF, называемый Registry, который я использую для добавления всевозможных полезных вещей. Мой типичный запрос выглядит так:
db.Registry
.Where(x => x.Domain == "SomeDomain" && x.Key == "SomeKey")
.Select(x => x.Value)
.Single();
где db
- переменная типа EFContainer
. Вместо того, чтобы иметь такой запрос повсюду, я хотел бы написать что-то гораздо более простое, например:
Registry.Get(Key: "SomeKey", Domain: "SomeDomain")
но проблема в том, что для того, чтобы этот метод получил доступ к базе данных, ему необходимо создать экземпляр EFContainer
, и когда это происходит, я начинаю иметь ошибки, которые IEntity change tracker не может обработать второе соединение. Я полагаю, что мог бы передать свою переменную db
методу, но это было бы странно.
Какой хороший способ сделать это?