public GetMemberlnfoResponse Group(string id) { var response = new GetMemberlnfoResponse(); MongoClient client = new MongoClient("mongodb://localhost:27017"); MongoDatabaseBase db = client.GetDatabase("ntut") as MongoDatabaseBase; var memberCollection = db.GetCollection <MembersCollection>("members"); var query = Builders <MembersCollection> .Filter.Empty; var nameList = memberCollection.Aggregate().Match(query).Group(e => e.Name, e => new { Name = e.Key, Count = e.Count() }).ToList(); if (nameList.Any(e => e.Count > 1)) { response.ok = false; response.errMsg = "有會員名字重複"; } return(response); }
public GetMemberlnfoResponse Lookup() { var response = new GetMemberlnfoResponse(); MongoClient client = new MongoClient("mongodb://localhost:27017"); MongoDatabaseBase db = client.GetDatabase("ntut") as MongoDatabaseBase; var salesCollection = db.GetCollection <SalesCollection>("sales"); var ordersCollection = db.GetCollection <OrderCollection>("orders"); var query = Builders <SalesCollection> .Filter.Empty; var lookup = salesCollection.Aggregate() .Match(query) .Lookup( foreignCollection: ordersCollection, localField: e => e._id, foreignField: p => p.pid, @as: (SaleWithOrders eo) => eo.orders) .ToList(); return(response); }
public GetMemberlnfoResponse Get(string id) { var response = new GetMemberlnfoResponse(); MongoClient client = new MongoClient("mongodb://localhost:27017"); MongoDatabaseBase db = client.GetDatabase("ntut") as MongoDatabaseBase; var memberCollection = db.GetCollection <MembersCollection>("members"); var query = Builders <MembersCollection> .Filter.Eq(e => e.Uid, id); var doc = memberCollection.Find(query).ToListAsync().Result.FirstOrDefault(); if (doc != null) { response.data.uid = doc.Uid; response.data.name = doc.Name; response.data.phone = doc.Phone; } else { response.ok = false; response.errMsg = "沒有此會員"; } return(response); }