c# - 允许 Newtonsoft 的 JsonConvert 访问内部 getter/setter

标签 c# json.net internal class-visibility

我有一个带有内部 getter/setter 的类,以防止用户访问此功能(我正在使用 REST api)。但是,这也意味着 JsonConvert 无权访问它们。如何允许 JsonConvert 访问内部功能?

最佳答案

您应该能够使用 JsonPropertyAttribute 装饰它们。

void Main()
{
    var x = new Test();
    Console.WriteLine(JsonConvert.SerializeObject(x));
}

// Define other methods and classes here
public class Test 
{
    public Test()
    {
        TestProp = "test";
    }

    [JsonProperty]
    internal string TestProp { get; set; }
}

输出:{"TestProp":"test"}

使用 Linqpad。

关于c# - 允许 Newtonsoft 的 JsonConvert 访问内部 getter/setter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34562784/

相关文章:

c# - 如何将对象转换为对象[]

c# - 在运行时禁用 HP UFT API 上的检查点

c# - 如何正确覆盖对象 [] 的 ReadJson 方法?

c# - 在 json 中反序列化嵌套列表的最佳方法 - C#

android - 如何使用 com.android.internal.telephony.Phone(内部 API)

android - Android 中大数据安全存放在哪里

ios - 在 itunesconnect 中找不到 TestFlight 内部测试选项卡

C# Image MySql 最佳实践和处理

c# - XPath Query C#动态提取节点

c# - 使用 Json.NET 反序列化带有数组数组的 json 字符串