Aba*_*ett 4 c# json amazon-dynamodb
我正在尝试将 JSON 值上传到 AWS Dynamo,当我上传具有“”作为值的任何属性的值时,它似乎给了我一个 400 类型的错误。我正在编写的应用程序是一个 C# 应用程序。
删除具有“”值的任何键的最佳方法是什么?我已经看到如何删除空值,但我不确定这是否适用。
说:
{myObj: { x: "", y: "test str" }, myStr: "hello world!"}
Run Code Online (Sandbox Code Playgroud)
变成:
{myObj: { y: "test str" }, myStr: "hello world!"}
Run Code Online (Sandbox Code Playgroud)
如果您使用Newtonsoft 的 Json.NET库,您可以使用JsonSerializerSettings和DefaultValue属性:
public class Rootobject
{
public Myobj myObj { get; set; }
public string myStr { get; set; }
}
public class Myobj
{
[DefaultValue("")]
public string x { get; set; }
[DefaultValue("")]
public string y { get; set; }
}
var originalSerializedObject = "{myObj: { x: \"\", y: \"test str\" }, myStr: \"hello world!\"}";
var deserializedObject = JsonConvert.DeserializeObject<Rootobject>(originalSerializedObject);
var serializerSettings = new JsonSerializerSettings
{
NullValueHandling = NullValueHandling.Ignore,
DefaultValueHandling = DefaultValueHandling.Ignore
};
var newSerializedObject = JsonConvert.SerializeObject(deserializedObject, serializerSettings);
Console.WriteLine(newSerializedObject);
//{"myObj":{"y":"test str"},"myStr":"hello world!"}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6636 次 |
| 最近记录: |