前提說明:
本編文章所屬的微服務框架代碼和對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常用的一些接口以及接口的實現,后續可以根據實際開發情況再進行更多接口的封裝
構造函數中的mongodb的配置文件全部讀取Apollo配置中心
3.在具體使用mongo的微服務實例的Startup文件ConfigureServices中向容器添加接口與實現
services.AddTransient(typeof(IMongoService), typeof(MongoService));
4.編寫與mongoDB交互的測試接口
/// <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中准備兩條測試數據
6.在swagger中調用接口來測試

最后看到輸出結果為數量為2,和添加的數量一致。

