在微服务框架Demo.MicroServer中添加对MongoDB的支持

前提说明:

本编文章所属的微服务框架代码和对mongo支持的代码全部放在github,地址:https://github.com/PeyShine/Demo.MicroServer

另外,如果不知道怎么安装mongodb可以看这篇:https://www.cnblogs.com/peyshine/p/12876471.html

 

1.在数据仓储层Demo.MicroServer.Repository,添加Mongo依赖包:dotnet add package MongoDB.Driver

 

2.编写mongo常用的一些接口以及接口的实现,后续可以根据实际开发情况再进行更多接口的封装

在微服务框架Demo.MicroServer中添加对MongoDB的支持

在微服务框架Demo.MicroServer中添加对MongoDB的支持

构造函数中的mongodb的配置文件全部读取Apollo配置中心

在微服务框架Demo.MicroServer中添加对MongoDB的支持

 

3.在具体使用mongo的微服务实例的Startup文件ConfigureServices中向容器添加接口与实现

1

services.AddTransient(typeof(IMongoService), typeof(MongoService));

4.编写与mongoDB交互的测试接口

1

2

3

4

5

6

7

8

9

10

11

12

13

/// <summary>

/// 测试从mongodb中获取用户数量

/// </summary>

/// <returns></returns>

[HttpGet]

public async Task<long> GetMongoUserCount()

{

    var list = new List<FilterDefinition<user_mongo>>();

    list.Add(Builders<user_mongo>.Filter.Exists("user_id"true));

    var filter = Builders<user_mongo>.Filter.And(list);

 

     return await _mongoService.CountAsync(filter, "users");

}

5.在mongo中准备两条测试数据在微服务框架Demo.MicroServer中添加对MongoDB的支持

6.在swagger中调用接口来测试

在微服务框架Demo.MicroServer中添加对MongoDB的支持

最后看到输出结果为数量为2,和添加的数量一致。

在微服务框架Demo.MicroServer中添加对MongoDB的支持