zoukankan      html  css  js  c++  java
  • .NET MongoDB Driver 2.2 API注释

    主要内容

    1 MongoClient

      1.1构造函数

      1.2 方法

    2 IMongoDatabase

    3 IMongoCollection

    4 IMongoCollectionExtensions

    5 DeleteResult

    6 UpdateResult

    7 IFindFluent<TDocument, TDocument> 继承了

    8 IFindFluentExtensions

    9 IAsyncCursorSourceExtensions

    10 Builders<DocumentInfo> 构造器

    11 FilterDefinitionBuilder<TDocument>

    12 FilterDefinition<TDocument>:基本过滤器

    13 ProjectionDefinitionBuilder<TDocument>

    14 SortDefinitionBuilder<TDocument>

    15 UpdateDefinitionBuilder<TDocument>

    16 BsonDocument:表示一个BSON文档

    17 IBsonSerializerExtensions:扩展自IBsonSerializer

    18 BsonDeserializationContext

    19 AggregateOptions

    1 MongoClient

    1.1构造函数

    1)public MongoClient(MongoClientSettings settings);

      MongoClientSettings:和MongoUrl功能基本一致,但MongoClientSettings的属性多半是可修改类型。

    2)public MongoClient(MongoUrl url);

      MongoUrl :通过构造函数public MongoUrl(string url)设置连接utl。请注意,MongoUrl 的属性均为只读类型。

    3)public MongoClient(string connectionString);

      connectionString为连接字符串,标准连接字符串样式:

      mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[database][?options]]

    参数说明:

      mongodb://

        必选。指明此链接字符串具有标准格式

      username:password@

        可选。如果指定,客户端将尝试使用这些凭证登陆到具体的数据库

      host1

        必选。指定了服务器连接地址。它确定了一个主机名,IP地址,或UNIX域套接字。

      :port1

        可选。默认值为27017,如果未指定则为默认值。

      hostX

        可选。你可以指定尽可能多的主机,您将指定多个主机,例如,连接到副本集。

      /database

        可选。用于验证的数据库名称,如果连接字符串包含username:password@格式的身份验证凭据。如果没有指定/database并且包含了身份验证凭据,驱动将会验证admin 数据库

      ?options

        可选。格式为:name=value,使用&;分隔每一对值。

     

      例如:mongodb://192.168.22.246,192.168.22.245:2500/?replicaSet=test&connectTimeoutMS=300000

      1)Replica Set Option

        replicaSet指定副本集的名称。

      2)Connection Options

        ssl:默认值是false,不启动TLS / SSL连接;值为ture,启动TLS / SSL连接

        connectTimeoutMS:连接超时值,默认永不超时。单位毫秒。

        socketTimeoutMS:套接字超时值,默认永不超时。单位毫秒。

      3)Connection Pool Options

        maxPoolSize连接池最大连接数,默认值为100。

          minPoolSize连接池最小连接数,默认值为0。

      示例:

      mongodb://test:cnki2016@192.168.22.26:27017/DBFIRST?maxPoolSize=100;minPoolSize=10

     

    1.2 方法

    1)public override sealed void DropDatabase(string name, CancellationToken cancellationToken = null)

    删除数据库

    参数:

      name:数据库名称

      cancellationToken:传播有关应取消操作的通知

     

    2)public override sealed IMongoDatabase GetDatabase(string name, MongoDatabaseSettings settings = null);

    获得数据库

    参数:

      name:数据库名称

      settings:数据库设置

     

    2 IMongoDatabase

    1)void CreateCollection(string name, CreateCollectionOptions options = null, CancellationToken cancellationToken = null)

    创建集合

    参数:

      name:集合名称

      Options:创建集合时的待选参数

      cancellationToken:传播有关应取消操作的通知

    2)void DropCollection(string name, CancellationToken cancellationToken = null);

    删除集合

    参数:

      name:集合名称

      cancellationToken:传播有关应取消操作的通知

    3)IMongoCollection<TDocument> GetCollection<TDocument>(string name, MongoCollectionSettings settings = null)

    获得集合

    参数:

      TDocument:文档类型

      name:集合名称

      settings:数据库设置

    4)void RenameCollection(string oldName, string newName, RenameCollectionOptions options = null, CancellationToken cancellationToken = null)

    重命名集合

    参数:

      oldName:集合旧的名称

      newName:集合新名称

      options:重命名时的设置参数

      cancellationToken:传播有关应取消操作的通知

     

    3 IMongoCollection

    1)DeleteResult DeleteMany(FilterDefinition<TDocument> filter, CancellationToken cancellationToken = null)

    删除多个文档,将过滤出的文档全部删除

    参数:

      TDocument:文档类型

      filter:过滤器

      cancellationToken:传播有关应取消操作的通知

    2) DeleteResult DeleteOne(FilterDefinition<TDocument> filter, CancellationToken cancellationToken = null)

    删除一个文档,将过滤出的文档中第一个删除。

    参数:

      TDocument:文档类型

      filter:过滤器

      cancellationToken:传播有关应取消操作的通知

    3) void InsertMany(IEnumerable<TDocument> documents, InsertManyOptions options = null, CancellationToken cancellationToken = null)

    插入多个文档

    参数:

      TDocument:文档类型

      documents:待插入文档

      options:插入操作设置参数

      cancellationToken:传播有关应取消操作的通知

    4) void InsertOne(TDocument document, InsertOneOptions options = null, CancellationToken cancellationToken = null)

    插入一个文档

    参数:

      documents:待插入文档

      options:插入操作设置参数

      cancellationToken:传播有关应取消操作的通知

    5) UpdateResult UpdateMany(FilterDefinition<TDocument> filter, UpdateDefinition<TDocument> update, UpdateOptions options = null, CancellationToken cancellationToken = null)

    更新多个文档,将过滤出的多个文档全部更新

    参数:

      TDocument:文档类型

      filter:过滤器

      update:更新过滤器

      options:插入操作设置参数

      cancellationToken:传播有关应取消操作的通知

    6) UpdateResult UpdateOne(FilterDefinition<TDocument> filter, UpdateDefinition<TDocument> update, UpdateOptions options = null, CancellationToken cancellationToken = null)

    更新一个文档,将过滤出的多个文档中的第一个更新

    参数:

      TDocument:文档类型

      filter:过滤器

      update:更新过滤器

      options:插入操作设置参数

      cancellationToken:传播有关应取消操作的通知

    7) long Count(FilterDefinition<TDocument> filter, CountOptions options = null, CancellationToken cancellationToken = null)

    获得文档数量

    参数:

      TDocument:文档类型

      filter:过滤器

      options:插入操作设置参数

      cancellationToken:传播有关应取消操作的通知

    8) Task InsertManyAsync(IEnumerable<TDocument> documents, InsertManyOptions options = null, CancellationToken cancellationToken = null)

    已异步的方式插入多个文档

    参数:

      TDocument:文档类型

      documents:待插入文档

      options:插入操作设置参数

      cancellationToken:传播有关应取消操作的通知

    9) Task InsertOneAsync(TDocument document, InsertOneOptions options = null, CancellationToken cancellationToken = null)

    以异步方式插入一个文档

    参数:

      TDocument:文档类型

      documents:待插入文档

      options:插入操作设置参数

      cancellationToken:传播有关应取消操作的通知

    10)IBsonSerializer<TDocument> DocumentSerializer { get; }

    获得文档序列化器

    11)IAsyncCursor<TResult> Aggregate<TResult>(PipelineDefinition<TDocument, TResult> pipeline, AggregateOptions options = null, CancellationToken cancellationToken = null)

    聚集操作

    参数:

      TResult:返回结果类型

      TDocument:输入文档类型

      pipeline:管道

      options :设置参数

      cancellationToken :取消标记

    4 IMongoCollectionExtensions

    1)public static IFindFluent<TDocument, TDocument> Find<TDocument>(this IMongoCollection<TDocument> collection, Expression<Func<TDocument, bool>> filter, FindOptions options = null)

    找到文档

    参数:

      TDocument:文档类型

      collection:集合

      filter:查找条件

      options:查找操作设置参数

    2)public static IFindFluent<TDocument, TDocument> Find<TDocument>(this IMongoCollection<TDocument> collection, FilterDefinition<TDocument> filter, FindOptions options = null)

    找到文档

    参数:

      TDocument:文档类型

      collection:集合

      filter:查找条件

      options:查找操作设置参数

    5 DeleteResult 

    1)public abstract long DeletedCount { get; }

    获得删除的条数,如果IsAcknowledged的值为false,将抛出异常

    2)public abstract bool IsAcknowledged { get; }

    结果是否被承认

     

    6 UpdateResult 

    1)public abstract bool IsAcknowledged { get; }

    结果是否被承认

    2)public abstract bool IsModifiedCountAvailable { get; }

    是否可以获得修改的数量

    3)public abstract long MatchedCount { get; }

    匹配到的数量

    4)public abstract long ModifiedCount { get; }

    修改的数量

    5)public abstract BsonValue UpsertedId { get; }

    获得更新插入的id

     

    7 IFindFluent<TDocument, TDocument> 继承了

    1)IFindFluent<TDocument, TProjection> Limit(int? limit)

    限制取出的文档数量

    参数:

      TDocument:文档类型

      TProjection:投影类型,如果没有投影那么其类型和TDocument相同

      limit:取出文档数量

    2)IFindFluent<TDocument, TNewProjection> Project<TNewProjection>(ProjectionDefinition<TDocument, TNewProjection> projection)

    对找到的文档进行投影操作

    参数:

      TDocument:文档类型

      TNewProjection:投影类型,如果没有投影那么其类型和TDocument相同

      projection:投影

    3)IFindFluent<TDocument, TProjection> Skip(int? skip)

    跳过一定数量的文档

    参数:

      TDocument:文档类型

      TProjection:投影类型,如果没有投影那么其类型和TDocument相同

      skip:跳过的条数

    4)IFindFluent<TDocument, TProjection> Sort(SortDefinition<TDocument> sort)

    对找到的文档排序

    参数:

      TDocument:文档类型

      TProjection:投影类型,如果没有投影那么其类型和TDocument相同

      sort:排序定义

     

    8 IFindFluentExtensions

    public static TProjection First<TDocument, TProjection>(this IFindFluent<TDocument, TProjection> find, CancellationToken cancellationToken = null)

    获得找到的第一个元素。

    参数:

      TDocument:文档类型

      TProjection:投影类型,如果没有投影那么其类型和TDocument相同

      find:查找条件

      cancellationToken:传播有关应取消操作的通知

    9 IAsyncCursorSourceExtensions

    public static List<TDocument> ToList<TDocument>(this IAsyncCursorSource<TDocument> source, CancellationToken cancellationToken = null)

    IAsyncCursorSource<TDocument> source转换为List<TDocument>

    参数:

      TDocument:文档类型

      source:待转换集合

      cancellationToken:传播有关应取消操作的通知

    -----------------------------------------------------------------------------------------

    转载与引用请注明出处。

    时间仓促,水平有限,如有不当之处,欢迎指正。

  • 相关阅读:
    RPC
    动词 or 名词 :这是一个问题 【转载】
    js 如何清除setinterval
    封装动画特效
    飞入特效
    建字段_添加数据_生成json.php
    mybatis由浅入深day02_9.3.5使用生成的代码_9.4逆向工程注意事项
    mybatis由浅入深day02_9逆向工程
    mybatis由浅入深day02_8spring和mybatis整合
    mybatis由浅入深day02_7.4mybatis整合ehcache_7.5二级缓存应用场景_7.6二级缓存局限性
  • 原文地址:https://www.cnblogs.com/hdwgxz/p/8335252.html
Copyright © 2011-2022 走看看