gpt4 book ai didi

asp.net - 使用 EF5 和 Newtonsoft.Json 的自引用循环

转载 作者:行者123 更新时间:2023-12-05 04:18:25 24 4
gpt4 key购买 nike

我首先将 MVC4 与 EF5 数据库结合使用,然后使用 Newtonsoft.Json 将对象序列化为 JSON,例如在 Web API Controller 中。

为了避免自引用循环的问题,我将属性 [JsonIgnore] 设置为我生成的类中的特定集合。

我现在的问题是,每次我更新我的模型时,我都必须将属性重新添加到类中。

我怎样才能避免这种情况?我想我必须编辑 DBModel.tt 脚本?我该怎么办?

最佳答案

您应该能够使用具有 MetadataType 属性的元数据类。如果您生成的类是:

public partial class MyClass{

public string SomeProperty {get; set; }

public string SomePropertyToIgnore {get; set; }
}

然后你需要像这样创建一个元数据类(在同一个命名空间中):

public class MyClass_Metadata{
[JsonIgnore]
public string SomePropertyToIgnore {get; set; }
}

使用应用的 MetadatType 属性创建您生成的类的一部分(在相同的命名空间中):

[MetadataType(typeof(MyClass_Metadata))]
public partial class MyClass{
}

引用:http://msdn.microsoft.com/en-us/library/ee707339(v=vs.91).aspx

关于asp.net - 使用 EF5 和 Newtonsoft.Json 的自引用循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14978238/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com