Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/311.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用C#驱动程序将文档移动到MongoDB中的另一个数据库?_C#_Mongodb - Fatal编程技术网

如何使用C#驱动程序将文档移动到MongoDB中的另一个数据库?

如何使用C#驱动程序将文档移动到MongoDB中的另一个数据库?,c#,mongodb,C#,Mongodb,以下是我想做的: 我从数据库A中检索所有文档,然后根据文档中的内容将它们分为两类。(代码已完成) 如果此文档属于类别1,则应将其移动到MongoDB中的另一个数据库 如果此文档属于类别2,则应从数据库中删除 如何实现步骤2?以下是我目前的代码: if (Answer == "Yes") { MongoClient mclient = new MongoClient(); var mdatabase = mclient.GetDatabase("Data"); var mc

以下是我想做的:

  • 我从数据库A中检索所有文档,然后根据文档中的内容将它们分为两类。(代码已完成)

  • 如果此文档属于类别1,则应将其移动到MongoDB中的另一个数据库

  • 如果此文档属于类别2,则应从数据库中删除

  • 如何实现步骤2?以下是我目前的代码:

    if (Answer == "Yes")
    {
        MongoClient mclient = new MongoClient();
        var mdatabase = mclient.GetDatabase("Data");
        var mcollection = mdatabase.GetCollection<BsonDocument>("Sample1");
        var filter = Builders<BsonDocument>.Filter.Eq("Answer", data);
        //Data variable is consist of the Answer string    
        //How to move this document into another database?
    }
    else if (Answer == "No")
    {
        MongoClient mclient = new MongoClient();
        var mdatabase = mclient.GetDatabase("Data");
        var mcollection = mdatabase.GetCollection<BsonDocument>("Sample1");
        var filter = Builders<BsonDocument>.Filter.Eq("Answer", data);
        var result = await mcollection.DeleteManyAsync(filter);
    }
    
    if(回答==“是”)
    {
    MongoClient mclient=新的MongoClient();
    var mdatabase=mclient.GetDatabase(“数据”);
    var mcollection=mdatabase.GetCollection(“Sample1”);
    var filter=Builders.filter.Eq(“应答”,数据);
    //数据变量由应答字符串组成
    //如何将此文档移动到另一个数据库中?
    }
    否则如果(回答=“否”)
    {
    MongoClient mclient=新的MongoClient();
    var mdatabase=mclient.GetDatabase(“数据”);
    var mcollection=mdatabase.GetCollection(“Sample1”);
    var filter=Builders.filter.Eq(“应答”,数据);
    var result=wait mcollection.DeleteManyAsync(过滤器);
    }
    

    如果有人能帮忙,谢谢!我已经在这里呆了很多天了

    您的筛选器变量现在包含所有已筛选的BsonDocuments。因此,您可以打开新的数据库连接

    var newDatabase= mclient.GetDatabase("newdb");
    
    并使用适当的命令将值插入新值,
    并从旧数据库中删除相同的内容,就像在elseif案例中一样。

    您的筛选器变量现在包含所有已筛选的BsonDocuments。因此,您可以打开新的数据库连接

    var newDatabase= mclient.GetDatabase("newdb");
    
    并使用适当的命令将值插入新值, 并从旧数据库中删除相同的内容,就像在elseif案例中一样