gpt4 book ai didi

c# - isArchived 为 false 时的 MongoDB C# 驱动程序唯一索引 PartialFilterExpression

转载 作者:可可西里 更新时间:2023-11-01 10:00:07 31 4
gpt4 key购买 nike

我有一个可以删除的项目集合。只要 isArchivedfalse,我就希望在名称上有一个唯一索引。我可以使用 mongo 命令行来完成,但我似乎找不到太多关于 C# 驱动程序的文档。目前我们有索引:

        await JobsCollection.Indexes.CreateOneAsync("{Name: 1}", new CreateIndexOptions
{
Unique = true
});

我认为这会变成接近于:

        await JobsCollection.Indexes.CreateOneAsync("{Name: 1}", new CreateIndexOptions<JobModel>
{
Unique = true,
PartialFilterExpression = /*something here*/
});

但我不完全确定“这里的东西”位置应该放什么。我可以只做一个像 "{ IsArchived: { $eq : false } }" 这样的字符串还是有更好的方法?谢谢。

最佳答案

更多类型的例子:

await JobsCollection.Indexes.CreateOneAsync(
Builders<JobModel>.IndexKeys
.Ascending(i => i.Name),
new CreateIndexOptions<JobModel>
{
Unique = true,
PartialFilterExpression = Builders<JobModel>.Filter.Eq(i => i.IsArchived, true)
});

关于c# - isArchived 为 false 时的 MongoDB C# 驱动程序唯一索引 PartialFilterExpression,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47542156/

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