Exemple #1
0
        public override async Task <DAL.App.DTO.ProductService> FindAsync(params object[] id)
        {
            var culture = Thread.CurrentThread.CurrentUICulture.Name.Substring(0, 2).ToLower();

            var productService = await RepositoryDbSet.FindAsync(id);

            if (productService != null)
            {
                await RepositoryDbContext.Entry(productService)
                .Reference(c => c.ProductForClient)
                .LoadAsync();

                await RepositoryDbContext.Entry(productService)
                .Reference(c => c.WorkObject)
                .LoadAsync();

                await RepositoryDbContext.Entry(productService)
                .Reference(c => c.Description)
                .LoadAsync();

                await RepositoryDbContext.Entry(productService.Description)
                .Collection(b => b.Translations)
                .Query()
                .Where(t => t.Culture == culture)
                .LoadAsync();
            }

            return(ProductServiceMapper.MapFromDomain(productService));
        }
Exemple #2
0
        public override async Task <List <ProductService> > AllAsync()
        {
            var culture = Thread.CurrentThread.CurrentUICulture.Name.Substring(0, 2).ToLower();

            return(await RepositoryDbSet
                   .Include(p => p.WorkObject)
                   .Include(p => p.ProductForClient)
                   .Include(t => t.Description)
                   .ThenInclude(t => t.Translations)
                   .Select(c => ProductServiceMapper.MapFromDomain(c))
                   .ToListAsync());
        }
Exemple #3
0
        public async Task <List <ProductService> > AllForClientProductAsync(int?productForClientId)
        {
            var culture = Thread.CurrentThread.CurrentUICulture.Name.Substring(0, 2).ToLower();

            var res = await RepositoryDbSet
                      .Include(p => p.ProductForClient)
                      .Include(p => p.WorkObject)
                      .Include(t => t.Description)
                      .ThenInclude(t => t.Translations)
                      .Where(p => p.ProductForClientId == productForClientId)
                      .Select(e => ProductServiceMapper.MapFromDomain(e))
                      .ToListAsync();

            return(res);
        }
 public async Task <List <BLL.App.DTO.ProductService> > AllForWorkObjectAsync(int workObjectId)
 {
     return((await Uow.ProductsServices.AllForWorkObjectAsync(workObjectId))
            .Select(e => ProductServiceMapper.MapFromDAL(e))
            .ToList());
 }