public PrescriptionEntity Find(string name) { try { var collection = Connect(DataAccessConstants.DatabaseName).GetCollection <PrescriptionEntity>(CollectionName); var prescription = IMongoCollectionExtensions.Find <PrescriptionEntity>(collection, f => f.CustomerName.Equals(name) || f.GpName.Equals(name)).FirstOrDefault(); if (prescription != null) { return new PrescriptionEntity() { PrescriptionId = prescription.PrescriptionId, CustomerName = prescription.CustomerName, GpName = prescription.GpName, Products = prescription.Products } } ; } catch (Exception e) { throw new KeyNotFoundException($"Customer or GP name not found: {name}"); } throw new KeyNotFoundException($"Customer or GP name not found: {name}"); }
public AccountEntity Find(string accountName) { try { var collection = Connect(DataAccessConstants.DatabaseName).GetCollection <AccountEntity>(CollectionName); var account = IMongoCollectionExtensions.Find <AccountEntity>(collection, f => f.AccountName.Equals(accountName)).FirstOrDefault(); if (account != null) { return new AccountEntity() { AccountId = account.AccountId, AccountName = account.AccountName, Password = account.Password, AccountType = account.AccountType, IsLoggedIn = account.IsLoggedIn, LastLoginDate = account.LastLoginDate } } ; } catch (Exception e) { throw new KeyNotFoundException($"Account Name not found: {accountName}"); } throw new KeyNotFoundException($"Account Name not found: {accountName}"); }
public async Task <StaticPagedList <T> > PaginationAsync(int page, int total, SortDefinition <T> sortBy, Expression <Func <T, bool> > query = null) { StaticPagedList <T> staticPagedList; CancellationToken cancellationToken; long num = (long)0; if (query != null) { IMongoCollection <T> collection = this.Collection; FilterDefinition <T> filterDefinition = query; cancellationToken = new CancellationToken(); num = await collection.CountAsync(filterDefinition, null, cancellationToken); IFindFluent <T, T> findFluent = IMongoCollectionExtensions.Find <T>(this.Collection, query, null).Skip(new int?((page - 1) * total)).Limit(new int?(total)).Sort(sortBy); cancellationToken = new CancellationToken(); List <T> listAsync = await IAsyncCursorSourceExtensions.ToListAsync <T>(findFluent, cancellationToken); staticPagedList = new StaticPagedList <T>(listAsync, page, total, (int)num); } else { IMongoCollection <T> mongoCollection = this.Collection; FilterDefinition <T> bsonDocument = new BsonDocument(); cancellationToken = new CancellationToken(); num = await mongoCollection.CountAsync(bsonDocument, null, cancellationToken); IFindFluent <T, T> findFluent1 = IMongoCollectionExtensions.Find <T>(this.Collection, new BsonDocument(), null).Skip(new int?((page - 1) * total)).Limit(new int?(total)).Sort(sortBy); cancellationToken = new CancellationToken(); List <T> ts = await IAsyncCursorSourceExtensions.ToListAsync <T>(findFluent1, cancellationToken); staticPagedList = new StaticPagedList <T>(ts, page, total, (int)num); } return(staticPagedList); }
public CustomerEntity Find(string customerName) { try { var collection = Connect(DataAccessConstants.DatabaseName) .GetCollection <CustomerEntity>(CollectionName); var customer = IMongoCollectionExtensions .Find <CustomerEntity>(collection, f => f.CustomerName.Equals(customerName)).FirstOrDefault(); if (customer != null) { return(new CustomerEntity() { CustomerId = customer.CustomerId, CustomerName = customer.CustomerName, DateOfBirth = customer.DateOfBirth, Address = customer.Address, PhoneNumber = customer.PhoneNumber, SchemesCards = customer.SchemesCards }); } } catch (Exception e) { throw new KeyNotFoundException($"Customer Name not found: {customerName}"); } throw new KeyNotFoundException($"Customer Name not found: {customerName}"); }
public async Task <T> FindAsync <TKey>(TKey id, string name = "_id") { FilterDefinition <T> filterDefinition = Builders <T> .Filter.Eq <TKey>(name, id); IFindFluent <T, T> findFluent = IMongoCollectionExtensions.Find <T>(this.Collection, filterDefinition, null); return(await IFindFluentExtensions.FirstOrDefaultAsync <T, T>(findFluent, new CancellationToken())); }
public async Task <StaticPagedList <T> > PaginationAsync(int page, int total, SortDefinition <T> sortBy, FilterDefinition <T> query) { long num = (long)0; IMongoCollection <T> collection = this.Collection; FilterDefinition <T> filterDefinition = query; CancellationToken cancellationToken = new CancellationToken(); num = await collection.CountAsync(filterDefinition, null, cancellationToken); IFindFluent <T, T> findFluent = IMongoCollectionExtensions.Find <T>(this.Collection, query, null).Skip(new int?((page - 1) * total)).Limit(new int?(total)).Sort(sortBy); cancellationToken = new CancellationToken(); List <T> listAsync = await IAsyncCursorSourceExtensions.ToListAsync <T>(findFluent, cancellationToken); return(new StaticPagedList <T>(listAsync, page, total, (int)num)); }
public async Task <IEnumerable <T> > AllAsync(FilterDefinition <T> query, SortDefinition <T> sortBy = null) { IEnumerable <T> listAsync; CancellationToken cancellationToken; IFindFluent <T, T> findFluent = IMongoCollectionExtensions.Find <T>(this.Collection, query, null); if (sortBy == null) { IFindFluent <T, T> findFluent1 = findFluent; cancellationToken = new CancellationToken(); listAsync = await IAsyncCursorSourceExtensions.ToListAsync <T>(findFluent1, cancellationToken); } else { IFindFluent <T, T> findFluent2 = findFluent.Sort(sortBy); cancellationToken = new CancellationToken(); listAsync = await IAsyncCursorSourceExtensions.ToListAsync <T>(findFluent2, cancellationToken); } return(listAsync); }
public async Task <T> FindAsync(Expression <Func <T, bool> > where) { IFindFluent <T, T> findFluent = IMongoCollectionExtensions.Find <T>(this.Collection, where, null); return(await IFindFluentExtensions.FirstOrDefaultAsync <T, T>(findFluent, new CancellationToken())); }
public async Task <T> FindAsync(FilterDefinition <T> query) { IFindFluent <T, T> findFluent = IMongoCollectionExtensions.Find <T>(this.Collection, query, null); return(await IFindFluentExtensions.FirstOrDefaultAsync <T, T>(findFluent, new CancellationToken())); }
public async Task <IEnumerable <T> > AllAsync() { IFindFluent <T, T> findFluent = IMongoCollectionExtensions.Find <T>(this.Collection, new BsonDocument(), null); return(await IAsyncCursorSourceExtensions.ToListAsync <T>(findFluent, new CancellationToken())); }
public JsonResult Login([FromBody] LoginModel login) { var aa = this.HttpContext.Request.Body; BaseMessage loginMessage = new BaseMessage(); var userCollection = mongodb.GetMongodbCollection <SessionUsers>("Users"); //MongoDB.Driver.ExpressionFilterDefinition<Users> mongodbQuery = new MongoDB.Driver.ExpressionFilterDefinition<Users>(entity => entity.UserName == login.loginName && entity.Activity == "1"); //var userCursor = userCollection.FindSync<Users>(mongodbQuery); string guid = Guid.NewGuid().ToString(); if (userCollection != null) { var userFluent = IMongoCollectionExtensions.Find <SessionUsers>(userCollection, entity => entity.UserName == login.username && entity.Password == login.password && entity.Activity == "1"); if (userFluent.Count() > 0) { var user = userFluent.First(); SessionUsers sessionUser = user; sessionUser.ExpireTime = DateTime.Now.AddMinutes(20); sessionUser.SessionId = guid; SessionHelper.SessionUser.Add(sessionUser); loginMessage.code = HttpStatus.Success; loginMessage.data = new ExpandoObject(); loginMessage.data.SessionId = guid; loginMessage.data.DspName = sessionUser.UserDspName; loginMessage.data.ImgUrl = HttpContext.Request.Host.Value + new PathString("/UpLoadImg").Value + "/" + sessionUser.ImgUrl; loginMessage.msg = "µÇ½³É¹¦£¡"; } else { log.Error("ÕË»§»òÃÜÂë´íÎó"); loginMessage.msg = "ÕË»§»òÃÜÂë´íÎó£¡"; loginMessage.code = HttpStatus.LoginFailed; ErrorLoginHelper.AddErrorLoginCount(login.username); if (ErrorLoginHelper.GetErrorLoginCount(login.username) >= 10) { log.Info("ײ¿â¹¥»÷" + Common.ErrorLoginHelper.GetUserIp(this.HttpContext)); } } } else { loginMessage.msg = "·þÎñ¶Ë´íÎó£¬ÇëÁªÏµ¹ÜÀíÔ±£¡"; log.Error("·þÎñ¶Ë´íÎó£¬ÇëÁªÏµ¹ÜÀíÔ±£¡"); loginMessage.code = HttpStatus.LoginFailed; } //List<Users> myList = new List<Users>() { new Users() { CreateTime =DateTime.Now,UserId="1",Activity="1"},new Users() { CreateTime=DateTime.Now.AddDays(1),UserId="2",Activity="1",UserType=1} }; //ParameterExpression parameter1 = Expression.Parameter(typeof(Users), "p"); //ConstantExpression constant1 = Expression.Constant(DateTime.Now.AddMinutes(30)); //ConstantExpression constant2 = Expression.Constant(DateTime.Now.AddDays(2)); //MemberExpression member = Expression.PropertyOrField(parameter1, "CreateTime"); //var query1 = Expression.GreaterThan(member, constant1); //var query2 = Expression.LessThan(Expression.PropertyOrField(parameter1, "CreateTime"), constant2); //var query = Expression.And(query1, query2); //var lambda1 = Expression.Lambda<Func<Users, Boolean>>(query, parameter1); //var list = myList.Where(lambda1.Compile()); //return Json(guid); return(Json(loginMessage)); }