有没有办法在 MongoDB c# 中使 Limit 值交互?

Is there a way to make the Limit value interactive in MongoDB c#?

我想知道是否有办法在应用程序 运行 时使 Limit() 变量可变? 这是我的代码:

    void Start()
    {
        m_ButtonRun.onClick.AddListener(TaskOnClick);
    }
    public void TaskOnClick() //
    {
        string connectionString = "myconnection";

        var client = new MongoClient(connectionString);
        var database = client.GetDatabase("mydb");
        //var database = server.GetDatabase("WIVEmydbData");
        var collection = database.GetCollection<BsonDocument>("mycollection");
        var sort = Builders<BsonDocument>.Sort.Descending("Time");

        var document = collection.Find(new BsonDocument()).Sort(sort).Limit(limit: 1).ForEachAsync(d => Console.WriteLine(d));
        Console.WriteLine(document.ToString());

        //streamwriter writes the Console.WriteLine to multi-import.txt
        FileStream filestream = new FileStream("import.txt", FileMode.Create, FileAccess.ReadWrite, FileShare.ReadWrite);
        var writeFile = new StreamWriter(filestream);
        {
            writeFile.AutoFlush = true;
            Console.SetOut(writeFile);
            writeFile.Write(document.ToString());
        }
}

是否可以分配一个 public 按钮来以某种方式将限制增加 1? 我的想法是有 3 个按钮:"increase limit"、"execute the DB search"、"decrease Limit"。执行部分工作完美,只是想知道是否有可能即时定制 Limit()。

编辑: 添加了完整的代码......哦,男孩 我想到的是在 Limit() 的 () 中放一个 X 之类的东西,将 X 设置为默认值 1,然后有两个按钮可以从 X 值中加或减 1。

正如评论中所述,我很确定你可以简单地做一些类似

的事情
[SerializeField] Button increaseButton;
[SerializeField] Button decreaseButton;

private void Start()
{
    m_ButtonRun.onClick.AddListener(TaskOnClick);
    increaseButton.onClick.AddListener(IncreaseLimit);
    decreaseButton.onClick.AddListener(DecreaseLimit);
}

private int limit = 1;

public void IncreaseLimit()
{
    limit++;
}

public void DecreaseLimit()
{
    limit--;

    limit = Mathf.Max(limit, 1);
}

public void TaskOnClick() //
{
    string connectionString = "myconnection";

    var client = new MongoClient(connectionString);
    var database = client.GetDatabase("mydb");
    //var database = server.GetDatabase("WIVEmydbData");
    var collection = database.GetCollection<BsonDocument>("mycollection");
    var sort = Builders<BsonDocument>.Sort.Descending("Time");

    var document = collection.Find(new BsonDocument()).Sort(sort).Limit(limit).ForEachAsync(d => Console.WriteLine(d));
    Console.WriteLine(document.ToString());

    //streamwriter writes the Console.WriteLine to multi-import.txt
    FileStream filestream = new FileStream("import.txt", FileMode.Create, FileAccess.ReadWrite, FileShare.ReadWrite);
    var writeFile = new StreamWriter(filestream);
    {
        writeFile.AutoFlush = true;
        Console.SetOut(writeFile);
        writeFile.Write(document.ToString());
    }
}