private IFindFluent<Person, Person> CreateSubject() { var settings = new MongoCollectionSettings(); _collection = Substitute.For<IMongoCollection<Person>>(); _collection.DocumentSerializer.Returns(BsonSerializer.SerializerRegistry.GetSerializer<Person>()); _collection.Settings.Returns(settings); var options = new FindOptions<Person, Person>(); var subject = new FindFluent<Person, Person>(_collection, new BsonDocument(), options); return subject; }
// private methods private IAggregateFluent<C> CreateSubject() { var settings = new MongoCollectionSettings(); _collection = Substitute.For<IMongoCollection<C>>(); _collection.DocumentSerializer.Returns(BsonSerializer.SerializerRegistry.GetSerializer<C>()); _collection.Settings.Returns(settings); var options = new AggregateOptions(); var subject = new AggregateFluent<C, C>(_collection, Enumerable.Empty<IPipelineStageDefinition>(), options); return subject; }
public static IMongoCollection <T> GetDocumentCollection <T>( this IMongoDatabase database, MongoCollectionName collectionName, MongoCollectionSettings settings ) where T : Document => database.GetCollection <T>(collectionName == null ? MongoCollectionName.For <T>() : collectionName, settings);
internal void SetConnectAndCollectionAndBsonId(IConnect connect, MongoCollectionSettings mongoCollectionSettings) { SetCollectionNameAndBsonId(); Connect = connect; Collection = Connect.Collection <T>(CollectionName, mongoCollectionSettings); }
void Bootstrap() { _offsetsSettings = new MongoCollectionSettings { AssignIdOnInsert = false, WriteConcern = WriteConcern.Acknowledged }; }
public PostsRepository() { var settings = new MongoCollectionSettings(); PostsCollection = mongoDB.GetCollection <Post>("posts", settings); }
public MongoKeylessBaseRepository(MongodbContext <TMongoSetting> mongoDatabase, ILogger logger, MongoCollectionSettings mongoCollectionSettings = default) { var mongoDatabase1 = mongoDatabase.GetDateBase(); var collectionName = MongoCollectionNameCache.GetCollectionName <TEntity>(); Collection = mongoDatabase1.GetCollection <TEntity>(collectionName, mongoCollectionSettings); _logger = logger; }
/// <summary> /// 查询返回集合 /// </summary> /// <typeparam name="T">文档类型</typeparam> /// <param name="filter">Lambda过滤器</param> /// <param name="settings">数据库设置</param> /// <param name="options">查找操作设置</param> /// <returns></returns> public IEnumerable <T> Where <T>(Expression <Func <T, bool> > filter, MongoCollectionSettings settings = null, FindOptions options = null) where T : BaseMongoEntity { return(Database.GetCollection <T>(typeof(T).Name, settings).Find(filter, options).ToEnumerable()); }
/// <summary> /// 查询返回单条 /// </summary> /// <typeparam name="T">文档类型</typeparam> /// <param name="collectionName">集合名称</param> /// <param name="session">会话句柄(作用于事务)</param> /// <param name="id">文档默认ID</param> /// <param name="settings">数据库设置</param> /// <param name="options">查找操作设置</param> /// <returns></returns> public T FindOne <T>(string collectionName, IClientSessionHandle session, string id, MongoCollectionSettings settings = null, FindOptions options = null) where T : BaseMongoEntity { return(Database.GetCollection <T>(collectionName, settings).Find(session, f => f.Id == id, options).FirstOrDefault()); }
public IMongoCollection <TDocument> GetCollection <TDocument>(string name, MongoCollectionSettings settings = null) { return(new MockMongoCollection <TDocument>()); }
public MongoRepositoryContext(IMongoClient mongoClient, string databaseName, MongoDatabaseSettings databaseSettings = null, MongoCollectionSettings collectionSettings = null) : base(mongoClient) { this.Settings = new MongoRepositorySettings { ClientSettings = mongoClient.Settings, DatabaseName = databaseName, DatabaseSettings = databaseSettings, CollectionSettings = collectionSettings }; }
public static MongoCollection GetCollection(MongoCollectionSettings settings) { return(mDBDrone.GetCollection(settings)); }
private IMongoCollection<BsonDocument> GetCollection(string suffix) { var database = _bucket.Database; var collectionName = _bucket.Options.BucketName + "." + suffix; var writeConcern = _bucket.Options.WriteConcern ?? database.Settings.WriteConcern; var settings = new MongoCollectionSettings { WriteConcern = writeConcern }; return database.GetCollection<BsonDocument>(collectionName, settings); }
protected IMongoRepository <T> GetRepository <T>(MongoCollectionSettings settings) where T : class, new() { return(this.RepositoryFactory.Create <T>(settings)); }
protected IMongoCollection <T> Collection <T>(string name, MongoCollectionSettings settings = null) { var db = Client.GetDatabase(DatabaseName, DatabaseSetttings); return(db.GetCollection <T>(name, settings)); }
protected IMongoCollection <T> Collection <T>(MongoCollectionSettings settings = null) { return(Collection <T>(ModelName <T>(), settings)); }
private IMongoCollection<Person> CreateSubject() { var settings = new MongoCollectionSettings(); var subject = Substitute.For<IMongoCollection<Person>>(); subject.DocumentSerializer.Returns(settings.SerializerRegistry.GetSerializer<Person>()); subject.Settings.Returns(settings); return subject; }
public abstract IMongoCollection <TDocument> GetCollection <TDocument>(string name, MongoCollectionSettings settings = null);
protected List <T> GetModels <T>(string collectionName, MongoCollectionSettings settings = null) { var collection = Collection <T>(collectionName, settings); return(collection.Find(new BsonDocument()).ToList()); }
public static IMongoCollection <BsonDocument> GetBsonCollection(string collectionName, MongoCollectionSettings settings = null) { return(Database.GetCollection <BsonDocument>(collectionName, settings)); }
/// <summary> /// 查询返回集合 /// </summary> /// <typeparam name="T">文档类型</typeparam> /// <param name="collectionName">集合名称</param> /// <param name="session">会话句柄(作用于事务)</param> /// <param name="filter">Lambda过滤器</param> /// <param name="settings">数据库设置</param> /// <param name="options">查找操作设置</param> /// <returns></returns> public IEnumerable <T> Where <T>(string collectionName, IClientSessionHandle session, Expression <Func <T, bool> > filter, MongoCollectionSettings settings = null, FindOptions options = null) where T : BaseMongoEntity { return(Database.GetCollection <T>(collectionName, settings).Find(session, filter, options).ToEnumerable()); }
public IMongoRepository <T> Create <T>(MongoCollectionSettings settings) where T : class, new() { var collection = GetCollection <T>(this.mongoDatabase, settings); return(new DefaultMongoRepository <T>(collection)); }
/// <summary> /// 查询返回单条 /// </summary> /// <typeparam name="T">文档类型</typeparam> /// <param name="filter">过滤器</param> /// <param name="settings">数据库设置</param> /// <param name="options">查找操作设置</param> /// <returns></returns> public T FindOne <T>(IClientSessionHandle session, FilterDefinition <T> filter, MongoCollectionSettings settings = null, FindOptions options = null) where T : BaseMongoEntity { return(Database.GetCollection <T>(typeof(T).Name, settings).Find(session, filter, options).FirstOrDefault()); }
/// <summary> /// 查询返回单条 /// </summary> /// <typeparam name="T"></typeparam> /// <param name="collectionName">集合名称</param> /// <param name="filter">Lambda过滤器</param> /// <param name="settings">数据库设置</param> /// <param name="options">查找操作设置</param> /// <returns></returns> public T FindOne <T>(string collectionName, Expression <Func <T, bool> > filter, MongoCollectionSettings settings = null, FindOptions options = null) where T : BaseMongoEntity { return(Database.GetCollection <T>(collectionName, settings).Find(filter, options).FirstOrDefault()); }
public EngineVariablesRepository() { var settings = new MongoCollectionSettings(); EngineVariablesCollection = mongoDB.GetCollection <EngineVariable>("variables", settings); }
/// <summary> /// 查询返回单条 /// </summary> /// <typeparam name="T">文档类型</typeparam> /// <param name="id">文档默认ID</param> /// <param name="settings">数据库设置</param> /// <param name="options">查找操作设置</param> /// <returns></returns> public T FindOne <T>(string id, MongoCollectionSettings settings = null, FindOptions options = null) where T : BaseMongoEntity { return(Database.GetCollection <T>(typeof(T).Name, settings).Find(f => f.Id == id, options).FirstOrDefault()); }
public Repository(IConnect connect, MongoCollectionSettings mongoCollectionSettings) { SetConnectAndCollectionAndBsonId(connect, mongoCollectionSettings); }
/// <summary> /// 查询全部 /// </summary> /// <typeparam name="T">文档类型</typeparam> /// <param name="settings">数据库设置</param> /// <param name="options">查找操作设置</param> /// <returns></returns> public IEnumerable <T> FindAll <T>(MongoCollectionSettings settings = null, FindOptions options = null) where T : BaseMongoEntity { return(Database.GetCollection <T>(typeof(T).Name, settings).Find(_ => true, options).ToEnumerable()); }
public override IMongoCollection <TDocument> GetCollection <TDocument>(string name, MongoCollectionSettings settings = null) { var collection = _collections.GetOrAdd(name, key => new BsonDocumentCollection()); return(new FakeMongoCollection <TDocument>(this, collection)); }
/// <summary> /// 查询全部 /// </summary> /// <typeparam name="T">文档类型</typeparam> /// <param name="collectionName">集合名称</param> /// <param name="session">会话句柄(作用于事务)</param> /// <param name="settings">数据库设置</param> /// <param name="options">查找操作设置</param> /// <returns></returns> public IEnumerable <T> FindAll <T>(string collectionName, IClientSessionHandle session, MongoCollectionSettings settings = null, FindOptions options = null) where T : BaseMongoEntity { return(Database.GetCollection <T>(collectionName, settings).Find(session, _ => true, options).ToEnumerable()); }
public static IMongoCollection <T> GetDocumentCollection <T>( this IMongoDatabase database, MongoCollectionSettings settings ) where T : Document => GetDocumentCollection <T>(database, MongoCollectionName.For <T>(), settings);
private Mock<IMongoCollection<Person>> CreateMockSubject() { var settings = new MongoCollectionSettings(); var mockSubject = new Mock<IMongoCollection<Person>> { DefaultValue = DefaultValue.Mock }; mockSubject.SetupGet(s => s.DocumentSerializer).Returns(settings.SerializerRegistry.GetSerializer<Person>()); mockSubject.SetupGet(s => s.Settings).Returns(settings); return mockSubject; }
public static IMongoCollection <TDocument> GetCollection <TDocument>(this IMongoDatabase database, MongoCollectionSettings settings = null) { var name = GetCollectionName <TDocument>(); return(database.GetCollection <TDocument>(name, settings)); }
/// <summary> /// 查询返回集合 /// </summary> /// <typeparam name="T">文档类型</typeparam> /// <param name="collectionName">集合名称</param> /// <param name="filter">过滤器</param> /// <param name="settings">数据库设置</param> /// <param name="options">查找操作设置</param> /// <returns></returns> public IEnumerable <T> Where <T>(string collectionName, FilterDefinition <T> filter, MongoCollectionSettings settings = null, FindOptions options = null) where T : BaseMongoEntity { return(Database.GetCollection <T>(collectionName, settings).Find(filter, options).ToEnumerable()); }
/// <summary> /// 查询全部 /// </summary> /// <typeparam name="TForeign">文档类型</typeparam> /// <typeparam name="T">文档类型</typeparam> /// <param name="session">会话句柄(作用于事务)</param> /// <param name="foreignDocument">文档对象</param> /// <param name="settings">数据库设置</param> /// <param name="options">查找操作设置</param> /// <returns></returns> public IEnumerable <T> DynamicCollectionFindAll <TForeign, T>(IClientSessionHandle session, TForeign foreignDocument, MongoCollectionSettings settings = null, FindOptions options = null) where TForeign : BaseMongoEntity where T : BaseMongoEntity { return(Database.GetCollection <T>($"{typeof(T).Name}_{foreignDocument.Id}", settings).Find(session, _ => true, options).ToEnumerable()); }
private IFindFluent<Person, Person> CreateSubject(FindOptions<Person, Person> options = null) { var settings = new MongoCollectionSettings(); _mockCollection = new Mock<IMongoCollection<Person>>(); _mockCollection.SetupGet(c => c.DocumentSerializer).Returns(BsonSerializer.SerializerRegistry.GetSerializer<Person>()); _mockCollection.SetupGet(c => c.Settings).Returns(settings); options = options ?? new FindOptions<Person, Person>(); var subject = new FindFluent<Person, Person>(_mockCollection.Object, new BsonDocument(), options); return subject; }