Raw property with System.Text.Json



我想知道,是否有一种方法可以在我的JSON对象中保留一个特定属性的原始内容。

public class MyClass {
public int RegularNumber { get; set; }
public string OtherStuff { get; set; }
public RawJsonString SomeNestedData { get; set; }
}

背景是客户端SomeNestedData对象是字符串和数组的不规则数组。我找不到合适的c#类型,甚至不需要在服务器上反序列化该属性,因为它将作为原始JSON保存到数据库中。

那么,有什么方法可以实现类似RawJsonString类的东西吗?还是我应该更好地使用IEnumerable<object>

如果您不打算在服务器端处理数据,而只在客户端处理数据,您可以将字段设置为字符串值。对于存储此数据的数据库字段,请确保设置为考虑所有JSON数据的潜在大小和潜在的字符编码,因为这些可能会带来问题。

public string SomeNestedData { get; set; } 

然而,如果您想要或可以创建一个用于(反(序列化的JSON数据的数据模型,您可以确保字段中只存储有效的JSON数据,请执行以下操作。。。

private string JSONSomeNestedData  { get; set; }
public  {model}  SomeNestedData 
{ get { return Deserialize(JSONSomeNestedData); }}
{ set { JSONSomeNestedData = Serialize(value);  }}

最新更新