// 创建 MongoClientSettings 对象
var settings = MongoClientSettings.FromConnectionString("mongodb://192.168.11.137:27017");
// 将 CommandLogger 设置为 MongoClientSettings 的 CommandLogger 属性
settings.ClusterConfigurator = cb => {
cb.Subscribe<CommandStartedEvent>(e =>
{
var cmd = e.Command.ToString();
});
};
var client = new MongoClient(settings);
var database = client.GetDatabase("MyTestDB");
var userinfos = database.GetCollection<UserInfo>("UserInfo").AsQueryable();
var ages = database.GetCollection<UserAge>("UserAges").AsQueryable();
var ageinfos = database.GetCollection<AgeInfo>("AgeInfos").AsQueryable();
var user = (from m in userinfos
join a in ages on m.Id equals a.UserId into aGroup
from a2 in aGroup.DefaultIfEmpty()
join b in ageinfos on a2.Id equals b.AgeId into bGroup
from b2 in bGroup.DefaultIfEmpty()
select new
{
Name = m.Name,
Time = b2.CreateTime,
Age = a2.Age
}).FirstOrDefault();