c# - 有没有办法让 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());
}
}
例如,是否可以分配一个公共按钮以将限制增加 1?我的想法是有 3 个按钮:“增加限制”、“执行数据库搜索”、“减少限制”。执行部分工作得很好,只是想知道是否有可能即时定制 Limit() 。
编辑:添加了完整的代码......哦,男孩我想的是在Limit()的()中放一个X之类的东西,将X设置为默认值1,然后有两个按钮来添加或减去1 从 X 值。
解决方案
正如评论中所述,我很确定你可以简单地做类似的事情
[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());
}
}
推荐阅读
- azure-virtual-network - 如何使 VPN 连接从 Azure VM 工作?
- c# - 我可以在 Azure DevOps 中使用 dotnet publish 命令发布 .net framework 4.7.1 解决方案吗
- jq - 如何“编号”数组项?
- git - 比较合并强制推送后的变化
- .net-core - GitLab CI 管道最佳实践 .NET 多个项目
- python - Python - 需要使用 python 包而不使用 pip/命令提示符安装
- spring-cloud-stream - Spring Cloud Stream函数问题——StreamBridge多次调用消费者
- autodesk-forge - 模型衍生 API 404 回复
- reactjs - 引导卡在反应中没有水平排列
- android - 使用坐标和地址打开谷歌地图导航方向