示例#1
0
        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()));
        }
示例#2
0
        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()));
        }
示例#3
0
        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()));
        }