c# - 告诉 RavenDB 忽略一个属性

标签 c# ravendb

我有一个文档模型要存储在 RavenDB 中,但我不想存储计算属性。我如何告诉 RavenDB 忽略此属性?

在下面的示例中,我不想存储Duration

public class Build
{
    public string Id { get; set; }
    public string Name { get; set; }
    public DateTime StartedAt { get; set; }
    public DateTime FinishedAt { get; set; }

    public TimeSpan Duration { get { return StartedAt.Subtract(FinishedAt); }}
}

最佳答案

只需用 [JsonIgnore] 修饰 Duration 属性,如下所示:

public class Build
{
    public string Id { get; set; }
    public string Name { get; set; }
    public DateTime StartedAt { get; set; }
    public DateTime FinishedAt { get; set; }

    [Raven.Imports.Newtonsoft.Json.JsonIgnore]
    //[Newtonsoft.Json.JsonIgnore] // for RavenDB 3 and up
    public TimeSpan Duration { get { return StartedAt.Subtract(FinishedAt); }}
}

在这里查看更多信息:http://ravendb.net/docs/client-api/advanced/custom-serialization

关于c# - 告诉 RavenDB 忽略一个属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10440964/

相关文章:

c# - 在网络浏览器控件中打印谷歌地图 - 不会显示方向线

dependencies - 我可以将 ravendb 客户端与 Microsoft.AspNet.WebApi.Client 一起安装吗?

.net - 指定索引文档集合排序

c# - 如何确定 MigraDoc 表是否会拆分为两页?

c# - Xamarin.IOS : Cannot Resolve Reference (System. 线程.Tasks.Extension.dll)

c# - Roslyn 和 .NET 运行时版本

c# - GKE 访问服务

c# - 在 RavenDB 中处理带点的前缀

persistence - 如何在 RavenDB 中正确建模松散类型的属性

c# - 从批处理语句中获取异常详细信息