我有以下代码。我希望 MiscellaneousData 覆盖一个抽象的 MiscellaneousDataBase。但是 IdMemberMap 总是出现空值。
使用独立的“正常”类有效。
if (!BsonClassMap.IsClassMapRegistered(typeof(MiscellaneousData)))
{
BsonClassMap.RegisterClassMap<MiscellaneousData>(cm =>
{
cm.AutoMap();
cm.SetIdMember(cm.GetMemberMap(c => c.Key));
cm.IdMemberMap.SetIdGenerator(StringObjectIdGenerator.Instance);
});
}
这是杂项数据及其基础 - 为清楚起见减少了:
public abstract class MiscellaneousDataBase
{
[XmlIgnore]
public abstract string Key { get; set; }
}
public class MiscellaneousData : MiscellaneousDataBase
{
public override string Key { get; set; }
}