无法将 BsonIgnoreIfDefault 用于 long 类型的属性

本文关键字:类型 属性 long 用于 BsonIgnoreIfDefault | 更新日期: 2023-09-27 18:28:07

[BsonDefaultValue(0)]
[BsonIgnoreIfDefault]
public long TotalItems { get; set; }

属性 [BsonDefaultValue(0(] 阻止将整个文档插入到 mongo 中,而我只想阻止存储 TotalItems 如果其值为零。如果我不使用属性 [BsonDefaultValue(0(], [BsonIgnoreIfDefault] 文档正确插入数据库,总项目入文档中作为">总项目":NumberLong(0(">,如果它为零,我实际上不想进入 db。我的问题为什么 [BsonDefaultValue(0(], [BsonIgnoreIfDefault] 属性阻止插入完整文档。

注意:我能够将上述两个属性与 int 类型的属性一起使用。

无法将 BsonIgnoreIfDefault 用于 long 类型的属性

那里的小错误,您需要将默认值转换为 long:

[BsonDefaultValue((long)0)]
[BsonIgnoreIfDefault]
public long TotalItems { get; set; }