mirror of
https://gitee.com/dotnetchina/SqlSugar.git
synced 2025-05-17 21:49:33 +08:00
207 lines
8.6 KiB
C#
207 lines
8.6 KiB
C#
using MongoDb.Ado.data;
|
||
using MongoDB.Bson;
|
||
using MongoDB.Driver;
|
||
using System;
|
||
using System.Collections.Generic;
|
||
using System.Data;
|
||
using System.Linq;
|
||
using System.Text;
|
||
using System.Threading.Tasks;
|
||
|
||
namespace MongoDbTest
|
||
{
|
||
public class AdoTest
|
||
{
|
||
public static void Init()
|
||
{
|
||
MongoClientTest();
|
||
MongoDbConnectionTest();
|
||
MongoDbCommandTest();
|
||
}
|
||
|
||
private static void MongoDbCommandTest()
|
||
{
|
||
//ExecuteReader single query 1
|
||
{
|
||
var connection = new MongoDbConnection(DbHelper.SqlSugarConnectionString);
|
||
connection.Open();
|
||
//对应的SQL: SELECT * FROM b WHERE age > 18;
|
||
MongoDbCommand mongoDbCommand = new MongoDbCommand(" find b { age: { $gt: 32 } } ", connection);
|
||
using (var reader = mongoDbCommand.ExecuteReader())
|
||
{
|
||
while (reader.Read())
|
||
{
|
||
var name = reader.GetString("name");
|
||
var age = reader.GetInt32("age");
|
||
}
|
||
}
|
||
connection.Close();
|
||
}
|
||
//ExecuteReader single query 2
|
||
{
|
||
var connection = new MongoDbConnection(DbHelper.SqlSugarConnectionString);
|
||
connection.Open();
|
||
//对应的SQL: SELECT name, age, _id FROM b WHERE age > 18;
|
||
MongoDbCommand mongoDbCommand = new MongoDbCommand(" find b [{ age: { $gt: 18 } }, { name: 1, age: 1 }]", connection);
|
||
using (var reader = mongoDbCommand.ExecuteReader())
|
||
{
|
||
while (reader.Read())
|
||
{
|
||
var name = reader.GetString("name");
|
||
var age = reader.GetInt32("age");
|
||
}
|
||
}
|
||
connection.Close();
|
||
}
|
||
//ExecuteReader single query 3
|
||
{
|
||
var connection = new MongoDbConnection(DbHelper.SqlSugarConnectionString);
|
||
connection.Open();
|
||
//对应的SQL: SELECT * FROM B LIMIT 2;
|
||
MongoDbCommand mongoDbCommand = new MongoDbCommand(" aggregate b [ { $limit:2 } ]", connection);
|
||
using (var reader = mongoDbCommand.ExecuteReader())
|
||
{
|
||
while (reader.Read())
|
||
{
|
||
var name = reader.GetString("name");
|
||
var age = reader.GetInt32("age");
|
||
}
|
||
}
|
||
connection.Close();
|
||
}
|
||
//ExecuteReader join query
|
||
{
|
||
var connection = new MongoDbConnection(DbHelper.SqlSugarConnectionString);
|
||
connection.Open();
|
||
MongoDbCommand mongoDbCommand = new MongoDbCommand(" find b { age: { $gt: 31 } }", connection);
|
||
using (var reader = mongoDbCommand.ExecuteReader())
|
||
{
|
||
while (reader.Read())
|
||
{
|
||
var name = reader.GetString("name");
|
||
var age = reader.GetInt32("age");
|
||
}
|
||
}
|
||
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();
|
||
}
|
||
//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
|
||
{
|
||
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();
|
||
}
|
||
//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 {\"filter\":{ 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 {\"filter\":{ 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 [{\"filter\":{ name: \"John\" }}]",
|
||
connection);
|
||
var value = mongoDbCommand.ExecuteNonQuery();
|
||
connection.Close();
|
||
}
|
||
//ExecuteNonQuery Find
|
||
{
|
||
var connection = new MongoDbConnection(DbHelper.SqlSugarConnectionString);
|
||
connection.Open();
|
||
MongoDbCommand mongoDbCommand = new MongoDbCommand(
|
||
" find b { age: { $gt: 31 } }",
|
||
connection);
|
||
var value = mongoDbCommand.ExecuteNonQuery();
|
||
connection.Close();
|
||
}
|
||
}
|
||
|
||
private static void MongoDbConnectionTest()
|
||
{
|
||
var db= new MongoDbConnection(DbHelper.SqlSugarConnectionString);
|
||
|
||
var database= db.GetDatabase();
|
||
var collections = database.GetCollection<BsonDocument>("b");
|
||
// 插入一个文档,MongoDB 会创建数据库和集合
|
||
var document = new BsonDocument { { "name", "bbbbbb" }, { "age", 40 } };
|
||
collections.InsertOne(document);
|
||
var list = collections.AsQueryable<BsonDocument>().ToList();
|
||
}
|
||
|
||
private static void MongoClientTest()
|
||
{
|
||
//开发中
|
||
var client = new MongoClient(DbHelper.ConnectionString);
|
||
var database = client.GetDatabase("SqlSugarDb");
|
||
// 获取当前数据库中的所有集合
|
||
var collections = database.GetCollection<BsonDocument>("a");
|
||
// 插入一个文档,MongoDB 会创建数据库和集合
|
||
var document = new BsonDocument { { "name", "aaaa" }, { "age", 30 } };
|
||
collections.InsertOne(document);
|
||
var list = collections.AsQueryable<BsonDocument>().ToList();
|
||
}
|
||
}
|
||
}
|