2025-04-26 15:50:22 +08:00
|
|
|
|
using MongoDb.Ado.data;
|
|
|
|
|
using MongoDB.Bson;
|
|
|
|
|
using MongoDB.Driver;
|
|
|
|
|
using System;
|
|
|
|
|
using System.Collections.Generic;
|
2025-05-01 14:01:35 +08:00
|
|
|
|
using System.Data;
|
2025-04-26 15:50:22 +08:00
|
|
|
|
using System.Linq;
|
|
|
|
|
using System.Text;
|
|
|
|
|
using System.Threading.Tasks;
|
|
|
|
|
|
|
|
|
|
namespace MongoDbTest
|
|
|
|
|
{
|
|
|
|
|
public class AdoTest
|
|
|
|
|
{
|
2025-04-26 19:34:30 +08:00
|
|
|
|
public static void Init()
|
|
|
|
|
{
|
|
|
|
|
MongoClientTest();
|
|
|
|
|
MongoDbConnectionTest();
|
2025-05-01 14:01:35 +08:00
|
|
|
|
MongoDbCommandTest();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private static void MongoDbCommandTest()
|
|
|
|
|
{
|
2025-05-01 14:09:30 +08:00
|
|
|
|
//ExecuteReader
|
|
|
|
|
{
|
|
|
|
|
var connection = new MongoDbConnection(DbHelper.SqlSugarConnectionString);
|
|
|
|
|
connection.Open();
|
|
|
|
|
MongoDbCommand mongoDbCommand = new MongoDbCommand(" find b { age: { $gt: 31 } }", connection);
|
|
|
|
|
using (var reader = mongoDbCommand.ExecuteReader())
|
2025-05-01 14:01:35 +08:00
|
|
|
|
{
|
2025-05-01 14:09:30 +08:00
|
|
|
|
while (reader.Read())
|
|
|
|
|
{
|
|
|
|
|
var name = reader.GetString("name");
|
|
|
|
|
var age = reader.GetInt32("age");
|
|
|
|
|
}
|
2025-05-01 14:01:35 +08:00
|
|
|
|
}
|
2025-05-01 14:09:30 +08:00
|
|
|
|
connection.Close();
|
|
|
|
|
}
|
|
|
|
|
//ExecuteScalar
|
|
|
|
|
{
|
|
|
|
|
var connection = new MongoDbConnection(DbHelper.SqlSugarConnectionString);
|
|
|
|
|
connection.Open();
|
|
|
|
|
MongoDbCommand mongoDbCommand = new MongoDbCommand(" find b { age: { $gt: 31 } }", connection);
|
|
|
|
|
var value=mongoDbCommand.ExecuteScalar();
|
|
|
|
|
connection.Close();
|
2025-05-01 14:01:35 +08:00
|
|
|
|
}
|
2025-05-01 17:27:12 +08:00
|
|
|
|
//ExecuteNonQuery insert
|
|
|
|
|
{
|
|
|
|
|
var connection = new MongoDbConnection(DbHelper.SqlSugarConnectionString);
|
|
|
|
|
connection.Open();
|
|
|
|
|
MongoDbCommand mongoDbCommand = new MongoDbCommand(
|
|
|
|
|
"insert b { name: \"John\", age: 31 }",
|
|
|
|
|
connection);
|
|
|
|
|
var value = mongoDbCommand.ExecuteNonQuery();
|
|
|
|
|
connection.Close();
|
|
|
|
|
}
|
|
|
|
|
//ExecuteNonQuery insertMany
|
2025-05-01 14:33:38 +08:00
|
|
|
|
{
|
|
|
|
|
var connection = new MongoDbConnection(DbHelper.SqlSugarConnectionString);
|
|
|
|
|
connection.Open();
|
|
|
|
|
MongoDbCommand mongoDbCommand = new MongoDbCommand(" insertMany b [{ name: \"John\", age: 31 }, { name: \"Alice\", age: 25 }, { name: \"Bob\", age: 30 } ] ", connection);
|
|
|
|
|
var value = mongoDbCommand.ExecuteNonQuery();
|
|
|
|
|
connection.Close();
|
|
|
|
|
}
|
2025-05-01 17:27:12 +08:00
|
|
|
|
//ExecuteNonQuery update
|
|
|
|
|
{
|
|
|
|
|
var connection = new MongoDbConnection(DbHelper.SqlSugarConnectionString);
|
|
|
|
|
connection.Open();
|
|
|
|
|
MongoDbCommand mongoDbCommand = new MongoDbCommand(
|
|
|
|
|
@"update b {
|
|
|
|
|
""filter"": { ""name"": ""John"" },
|
|
|
|
|
""update"": { ""$set"": { ""age"": 32 } }
|
|
|
|
|
}",
|
|
|
|
|
connection);
|
|
|
|
|
var value = mongoDbCommand.ExecuteNonQuery();
|
|
|
|
|
connection.Close();
|
|
|
|
|
}
|
|
|
|
|
//ExecuteNonQuery updateMany
|
|
|
|
|
{
|
|
|
|
|
var connection = new MongoDbConnection(DbHelper.SqlSugarConnectionString);
|
|
|
|
|
connection.Open();
|
|
|
|
|
MongoDbCommand mongoDbCommand = new MongoDbCommand(
|
|
|
|
|
@"updateMany b [{
|
|
|
|
|
""filter"": { ""name"": ""John"" },
|
|
|
|
|
""update"": { ""$set"": { ""age"": 32 } }
|
|
|
|
|
}]",
|
|
|
|
|
connection);
|
|
|
|
|
var value = mongoDbCommand.ExecuteNonQuery();
|
|
|
|
|
connection.Close();
|
|
|
|
|
}
|
|
|
|
|
//ExecuteNonQuery delete
|
|
|
|
|
{
|
|
|
|
|
var connection = new MongoDbConnection(DbHelper.SqlSugarConnectionString);
|
|
|
|
|
connection.Open();
|
|
|
|
|
MongoDbCommand mongoDbCommand = new MongoDbCommand(
|
|
|
|
|
"delete b { name: \"John\" }",
|
|
|
|
|
connection);
|
|
|
|
|
var value = mongoDbCommand.ExecuteNonQuery();
|
|
|
|
|
connection.Close();
|
|
|
|
|
}
|
|
|
|
|
//ExecuteNonQuery delete
|
|
|
|
|
{
|
|
|
|
|
var connection = new MongoDbConnection(DbHelper.SqlSugarConnectionString);
|
|
|
|
|
connection.Open();
|
|
|
|
|
MongoDbCommand mongoDbCommand = new MongoDbCommand(
|
|
|
|
|
"delete b { name: \"John\" }",
|
|
|
|
|
connection);
|
|
|
|
|
var value = mongoDbCommand.ExecuteNonQuery();
|
|
|
|
|
connection.Close();
|
|
|
|
|
}
|
|
|
|
|
//ExecuteNonQuery deleteMany
|
|
|
|
|
{
|
|
|
|
|
var connection = new MongoDbConnection(DbHelper.SqlSugarConnectionString);
|
|
|
|
|
connection.Open();
|
|
|
|
|
MongoDbCommand mongoDbCommand = new MongoDbCommand(
|
|
|
|
|
"deleteMany b { age: { $lt: 30 } }",
|
|
|
|
|
connection);
|
|
|
|
|
var value = mongoDbCommand.ExecuteNonQuery();
|
|
|
|
|
connection.Close();
|
|
|
|
|
}
|
2025-04-26 19:34:30 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private static void MongoDbConnectionTest()
|
|
|
|
|
{
|
|
|
|
|
var db= new MongoDbConnection(DbHelper.SqlSugarConnectionString);
|
|
|
|
|
|
|
|
|
|
var database= db.GetDatabase();
|
|
|
|
|
var collections = database.GetCollection<BsonDocument>("b");
|
|
|
|
|
// 插入一个文档,MongoDB 会创建数据库和集合
|
2025-05-01 14:01:35 +08:00
|
|
|
|
var document = new BsonDocument { { "name", "bbbbbb" }, { "age", 40 } };
|
2025-04-26 19:34:30 +08:00
|
|
|
|
collections.InsertOne(document);
|
|
|
|
|
var list = collections.AsQueryable<BsonDocument>().ToList();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private static void MongoClientTest()
|
2025-04-26 15:50:22 +08:00
|
|
|
|
{
|
|
|
|
|
//开发中
|
2025-04-26 19:34:30 +08:00
|
|
|
|
var client = new MongoClient(DbHelper.ConnectionString);
|
|
|
|
|
var database = client.GetDatabase("SqlSugarDb");
|
2025-04-26 15:50:22 +08:00
|
|
|
|
// 获取当前数据库中的所有集合
|
2025-04-26 19:34:30 +08:00
|
|
|
|
var collections = database.GetCollection<BsonDocument>("a");
|
|
|
|
|
// 插入一个文档,MongoDB 会创建数据库和集合
|
|
|
|
|
var document = new BsonDocument { { "name", "aaaa" }, { "age", 30 } };
|
|
|
|
|
collections.InsertOne(document);
|
|
|
|
|
var list = collections.AsQueryable<BsonDocument>().ToList();
|
2025-04-26 15:50:22 +08:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|