public List<ClientView> GetClients() { using (var views = new EntileViews()) { var clients = (from c in views.ClientViews.Include("Subscriptions.ExtendedInformation") select c); return clients.ToList(); } }
public ClientView GetClient(GetClientQuery query) { using (var views = new EntileViews()) { var client = (from c in views.ClientViews.Include("Subscriptions.ExtendedInformation") where c.ClientId == query.ClientId select c); return client.SingleOrDefault(); } }
public SubscriptionView GetSubscription(GetSubscriptionQuery query) { using (var views = new EntileViews()) { var client = (from c in views.ClientViews.Include("Subscriptions.ExtendedInformation") where c.ClientId == query.ClientId select c).SingleOrDefault(); if (client == null) return null; return client.Subscriptions.Where(s => s.SubscriptionId == query.SubscriptionId).SingleOrDefault(); } }
public List<SubscriptionView> ListSubscriptions(ListSubscriptionsQuery query) { using (var views = new EntileViews()) { var subs = views.ClientViews.SelectMany(c => c.Subscriptions); foreach (var m in query.Match) { var m1 = m; if (m1.Value != null) { subs = subs.Where(s => s.ExtendedInformation.Any(ei => ei.Key == m1.Key && ei.Value == m1.Value)); } else { subs = subs.Where(s => s.ExtendedInformation.Any(ei => ei.Key == m1.Key)); } } return subs.ToList(); } }