MongoDB,SQL,访问通用基本抽象类C#

问题描述 投票:0回答:1

早上好,鉴于我对数据库没有广泛的了解,因此我被要求开发一个从抽象Database类派生的通用MongoDB类,并使用SQL语法为MongoDB实现“插入”,“选择”,“更新”和“删除”方法。输入。我在转换这样的查询时遇到困难

SELECT auto,Part,Entity_ID,Pos_Z 
FROM Nesting 
WHERE Part='033TRAVERSOLATERALE3' or (Part='033TRAVERSOLATERALE1' and Pos_Z=-90)
ORDER BY Pos_Z ASC, Entity_ID DESC

在MongoDB中,也借助聚合框架。有人可以告诉我查询转换是否已经有nuget包或代码段吗?我找到了一些有用的工具,但没有库或源。除了解析SQL WHERE参数字符串以转换查询外,没有其他方法吗?

Part='033TRAVERSOLATERALE3' or (Part='033TRAVERSOLATERALE1' and Pos_Z=-90)

使用此参数进入MongoDB $ match阶段:

{
$or:[{Part: {$eq:'033TRAVERSOLATERALE3'}}, {$and:[{Part: {$eq:'033TRAVERSOLATERALE1'}}, {Pos_Z: {$eq:-90}}]}]
}

BsonDocument filter = new BsonDocument();
            filter.Add("$or", new BsonArray()
                    .Add(new BsonDocument()
                            .Add("Part", "033TRAVERSOLATERALE3")
                    )
                    .Add(new BsonDocument()
                            .Add("$and", new BsonArray()
                                    .Add(new BsonDocument()
                                            .Add("Part", "033TRAVERSOLATERALE1")
                                    )
                                    .Add(new BsonDocument()
                                            .Add("Pos_Z", new BsonInt64(-90L))
                                    )
                            )
                    )
            );

对此“肮脏”工作的任何帮助将不胜感激。谢谢

c# sql mongodb
1个回答
0
投票
当我更好地理解问题时,答案就来了。
© www.soinside.com 2019 - 2024. All rights reserved.