MongoDB驱动程序C#强类型嵌套索引

时间:2017-03-17 11:02:44

标签: c# mongodb mongodb-.net-driver

有没有办法使用C#驱动程序创建强类型嵌套索引。

我想要这种索引:db.foos.ensureIndex({'Bars.Baz': 1});

public class Foo {
    public Something() { }

    public List<Bar> Bars { get;set; }
}

public class Bar {
    public string Baz { get; set; }
}

var collection = database.GetCollection<Foo>("foos");
collection.Indexes.CreateOne(Builder<Foo>.IndexKeys.Ascending(/*What goes here?*/));

以下工作但创建索引“Bars.0.Baz”:

collection.Indexes.CreateOne(Builders<Foo>.IndexKeys.Ascending(x => x.Bars[0].Baz));

这根本不起作用,并出现序列化错误

collection.Indexes.CreateOne(Builders<Foo>.IndexKeys.Ascending(x => x.Bars.Select(y => y.Baz)));

这样可以,但会添加“Baz”索引

collection.Indexes.CreateOne(Builders<Foo>.IndexKeys.Ascending(x => x.Bars.First().Baz));

他们都不想添加“Bars.Baz”索引

MongoDB驱动程序版本是2.4.3.23

1 个答案:

答案 0 :(得分:0)

尝试类似:

clang hello.cc -o hello.exe
error: failed to load c2 (file not found)