将MongoDB C#驱动程序更新为1.9.2并将MongoRespository更新为1.6.6会中断继承处理

将MongoDB C#驱动程序更新为1.9.2并将MongoRespository更新为1.6.6会中断继承处理,c#,mongodb,mongorepository,C#,Mongodb,Mongorepository,最近,我将我的mongoRepository和驱动程序包从1.6.1/1.8.3更新为1.6.6/1.9.2。在那之后,它再也认不出我的类映射了。我已经编写了一个简单的应用程序来证明这一点 public abstract class A:Entity { public string Prop1 { get; set; } } public class B : A { public string Prop2 { get; set; } } public class C : A

最近,我将我的mongoRepository和驱动程序包从1.6.1/1.8.3更新为1.6.6/1.9.2。在那之后,它再也认不出我的类映射了。我已经编写了一个简单的应用程序来证明这一点

public abstract class A:Entity
{
    public string Prop1 { get; set; }
}

public class B : A
{
    public string Prop2 { get; set; }
}

public class C : A
{
    public string Prop3 { get; set; }
}

class Program
{
    static void Main(string[] args)
    {
        BsonClassMap.RegisterClassMap<B>();
        BsonClassMap.RegisterClassMap<C>();

        var repo1 = new MongoRepository<B>("mongodb://localhost/MongoTest")
        {
            new B() {Prop2 = "0"},
        };

        var repo2 = new MongoRepository<C>("mongodb://localhost/MongoTest")
        {
            new C() {Prop3 = "1"},
        };

    }
}
公共抽象类A:实体
{
公共字符串Prop1{get;set;}
}
B级:A级
{
公共字符串Prop2{get;set;}
}
公共C类:A
{
公共字符串Prop3{get;set;}
}
班级计划
{
静态void Main(字符串[]参数)
{
BsonClassMap.RegisterClassMap();
BsonClassMap.RegisterClassMap();
var repo1=新的MongoRepository(“mongodb://localhost/MongoTest")
{
新的B(){Prop2=“0”},
};
var repo2=新的MongoRepository(“mongodb://localhost/MongoTest")
{
新的C(){Prop3=“1”},
};
}
}
运行此代码后,我得到了两个名为B和C的集合,但它必须是一个名为A的集合,并且在每个实体中都包含_t字段


升级到最新版本时是否遗漏了什么

这是MongoRepository 1.6.6中的一个bug

1.6.7已发布