6.3.5 Поиск объектов
Поиск объектов можно производить через IDataContext, либо используя методы расширения, для прогона запроса через конвейер middleware.
Пример запроса поиска объектов:
|
// Запрос поиска объектов
InContext((db, serviceProvider) =>
{
var userId = DaemonsDomain.Instance.LoadDomainConfiguration().UserID;
var userService = serviceProvider.GetRequiredService<UserCachingService>();
var user = userService.GetUserAsync(userId).Result;
//Простой запрос
var docRc = db.DocRcs
.Where(p => p.IsnDoc == 1 && EF.Functions.Like("тест", p.Annotat + "%"))
.AsNoTracking()
.FirstOrDefaultAsync().Result;
//Запрос с заходом через middleware
var queryContext = MiddlewareHelper.CreateQueryContext(db, user, null, ExtProtOperationType.Query);
var docRc2 = db.DocRcs.Where(p => p.IsnDoc == 1)
.AsNoTracking()
.FirstOrDefaultAsync(serviceProvider, new QueryContext<IDocRc>(queryContext)).Result;
});
|
