public void DeleteMultiNotUse() { var listProductTag = _productTagRepository.GetAll().Select(x => x.TagID); var listPostTag = _postTagRepository.GetAll().Select(x => x.TagID); var listTag = _tagRepository.GetAll().Select(x => x.ID); var listTagUse = listProductTag.Union(listPostTag); var listTagNotUse = listTag.Except(listTagUse); foreach (var item in listTagNotUse) { _tagRepository.DeleteMulti(x => x.ID == item); } }
public static List <ProductItemModel> GetProductsForCatalog( IProductRepository productRepo, IProductTagRepository productTagRepo, TenantId tenantId, int pageNumber, int pageSize ) { var products = productRepo.GetAll(tenantId.Id, pageNumber, pageSize); var productTags = productTagRepo.GetAll(tenantId.Id); var joinProducts = (from product in products join productTag in productTags on product.Id equals productTag.ProductId select new { Product = product, ProductTag = productTag }) .ToList() .GroupBy(x => x.Product) .Select(x => new ProductItemModel(x.Key, x.Select(t => t.ProductTag))) .ToList(); return(joinProducts); }
public IEnumerable <ProductTag> GetAll() { return(_productTagRepository.GetAll()); }
public IEnumerable <ProductTag> GetAll() { return(_productTagRepository.GetAll(new string[] { "Products", "Tags" })); }