如何解决MongoDB C#驱动程序:如何忽略插入的属性,但不能忽略.Lookup中的属性
我使用以下模型反序列化数据库中的集合:
[BsonCollection("alerts")]
public class Alert
{
public ObjectId Id { get; set; }
public string Name { get; set; }
[BsonRepresentation(BsonType.ObjectId)]
public string AlertTypeId { get; set; }
[BsonRepresentation(BsonType.ObjectId)]
public string Label Id { get; set; }
public AlertType AlertType { get; set; }
public Label Label { get; set; }
}
属性AlertType和Label仅用于在应用.Lookup()时将其他集合中的对象反序列化为Alert对象。
所以我希望以其他方式忽略它们(插入,编辑等)。
我尝试添加属性[BsonIgnore],但是在应用Lookup时会引发错误:
'元素'AlertType'与BAS.Models.AlertSettings.AlertSetting类的任何字段或属性都不匹配。
意思是忽略发生在反序列化和序列化中。
这是仅在插入或编辑时才可以忽略属性的方法吗?
解决方法
我将使用2个不同的类来表示集合中的文档,并使用一个类来表示从聚合中查找的投影,因为该模型似乎用于多种用途。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。