gpt4 book ai didi

c# - MongoDB C# Driver QueryDocument 大于或小于

转载 作者:太空宇宙 更新时间:2023-11-03 15:48:38 25 4
gpt4 key购买 nike

我正在为 MongoDB 使用 C# 驱动程序,并且我有 QueryDocument 正在使用 Query.Add 查询字符串,但我正在尝试动态构建它(如果我正在为 = 一个值添加,它会起作用。我想做大于或小于日期检查(动态)。请参阅下面的代码。

我想做一个查询。添加事件(或其他事件)以添加到日期时间检查大于或小于的查询中。

注意:我可能会添加更多的值来搜索其他值而不是下面的值,所以我知道如果我只搜索 LoanNumber 我可以忽略日期/时间,但我想建立多个搜索条件。

现在我只需要比使用 C# 驱动程序更好/更少,但是指向我可以在哪里执行其他操作(如正则表达式或其他操作)的指针/帮助会有所帮助但不是必需的(我可以找到这些用于通用 MongoDB 搜索和其他环境只是不是 C# 驱动程序)。

        var query = new QueryDocument();

// check if there is anything in the loan number field and if so query that
string LoanNumber = txtLoanNumber.Text.ToString();
string StartDate = txtStatusChangeStartDate.Text.ToString();
string EndDate = txtStatusChangeEndDate.Text.ToString();



if (!string.IsNullOrEmpty(LoanNumber))
{
query.Add("LoanStatusAddedEvent.LoanNumber", LoanNumber);
}

if (!string.IsNullOrEmpty(StartDate))
{
query.Add("LoanStatusAddedEvent.StatusChangeDate", StartDate);
}

if (!string.IsNullOrEmpty(EndDate))
{
query.Add(
-- saw this online to do it but it was a direct query and not adding to the Query.add
Query.LT("LoanStatusAddedEvent.StatusChangeDate", EndDate)
);
}

最佳答案

如果你想查询多行尝试这样做:

  1. 收集您的查询数据:

    var queryList = new List();

    queryList.Add(Query.EQ("Attributes.AttributeName", attribute.AttributeName));queryList.Add(Query.EQ("Attributes2.AttributeName2", attribute2.AttributeName2));

  2. 构建您的查询:

    var query = new QueryBuilder();query.And(queryList);

之后你就可以使用你的查询了:)

希望能帮到你解决问题。

关于c# - MongoDB C# Driver QueryDocument 大于或小于,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26912470/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com