我正在尝试发送一个带有HttpRequest这样的JSON对象:
{
"some.setting.withperiods":"myvalue"
}
Run Code Online (Sandbox Code Playgroud)
我一直在为我的其他请求创建匿名对象,但由于名称包含一个点,因此我不能这样做.
我知道我可以创建一个类并指定[DataMember(Name="some.setting.withperiods")]属性,但必须有一个更轻量级的解决方案.
没有"简单"的方法来实现这一点,因为.C#是保留的.
但是,通过使用字典和集合初始化程序,您可以实现非常接近的目标.它仍然有点孤立,并且不需要您创建自定义类.
var obj = new Dictionary<string, object>
{
{ "some.setting.withperiods", "myvalue" }
};
var json = JsonConvert.SerializeObject(obj);
//{"some.setting.withperiods":"myvalue"}
Run Code Online (Sandbox Code Playgroud)
小智 5
您可以使用相同的"JsonProperty"属性.例如
[JsonProperty(".Name")]
public string Name { get; set; }
Run Code Online (Sandbox Code Playgroud)