public IList<TagObj> GetForProject(int projectId) { var filter = new TagFilter { ProjectId = projectId }; return Repository.GetTags(filter); }
public IList<TagObj> GetTags(TagFilter filter) { using (var db = GetInnerTrackContext()) { var items = db.Tags.AsQueryable(); if (filter.Id.HasValue) { items = items.Where(i => i.Id == filter.Id.Value); } if (filter.ProjectId.HasValue) { items = items.Where(i => db.Projects.Where(p => p.Id == filter.ProjectId).Any(p => p.Tags.Contains(i))); } return items.ToList(); } }