Postgresql Marten JasperFx-如何在生成文档时忽略类的属性

Postgresql Marten JasperFx-如何在生成文档时忽略类的属性,postgresql,marten,nosql,Postgresql,Marten,Nosql,在数据库上存储文档时是否可能忽略类属性 例如: 已解决 public class Test { public int Id { get; set; } public string Name { get; set; } [IgnoreDataMember] public Date DateOfBirth { get; set; } } TL:DR Marten只是在后台使用Newtonsoft.Json,所以要忽略属性,请使用Newtonsoft: 公共类帐户 { 公共字

在数据库上存储文档时是否可能忽略类属性

例如:


已解决

public class Test
{
   public int Id { get; set; }
   public string Name { get; set; }
   [IgnoreDataMember]
   public Date DateOfBirth { get; set; }
}
TL:DR Marten只是在后台使用Newtonsoft.Json,所以要忽略属性,请使用Newtonsoft:

公共类帐户
{
公共字符串全名{get;set;}
公共字符串电子邮件地址{get;set;}
[JsonIgnore]
公共字符串密码哈希{get;set;}
}
解释 这似乎是谷歌搜索上面的问题,所以我想加上我的50美分

由于MartenDB在内部使用Newtonsoft.Json,因此该库中的所有属性都可以正常工作。我不知道Igor的情况,在图书馆的任何地方都无法确认这一点,所以现在它似乎已经过时了

发件人: Marten持久化策略中一个绝对重要的组成部分是文档对象的JSON序列化。Marten旨在通过每个JSON序列化库中的本机机制使JSON序列化具有可扩展性和可配置性。为了顺利“入门”,Marten提供了对Newtonsoft.Json作为主要Json序列化程序的基本用法的支持

关于MartenDB中的Newtonsoft.json MartenDB与Newtonsoft.json无关,您可以为其他库编写自己的适配器

您所要做的就是实现
ISerializer
接口:

公共接口ISerializer
{
void ToJson(对象文档,TextWriter);
字符串ToJson(对象文档);
T FromJson(文本阅读器);
对象FromJson(类型,TextReader);
字符串ToCleanJson(对象文档);
枚举存储枚举存储{get;}
套管套管{get;}
CollectionStorage CollectionStorage{get;}
非公共成员存储非公共成员存储{get;}
}

更详细的例子:

Hi@RafałKopczyński!考虑把更多的信息放在你的答案中,比如:如何忽略财产?@ Igor,你是对的,我更新了我的答案。
public class Test
{
   public int Id { get; set; }
   public string Name { get; set; }
   [IgnoreDataMember]
   public Date DateOfBirth { get; set; }
}