[英]c# Serialize and json
我试图反序列化:
JsonConvert.DeserializeObject<ContentModel>("{\"Message\":\"asdf\",\"Attachments\":[\"dummy.pdf\",\"unnamed.jpg\"]}"),
内容模型的位置:
public class ContentModel
{
public string Message { get; set; }
public string ContentType { get; set; }
public string[] Attachments { get; set; }
}
但由于Attachments
的字符串数组,反序列化失败。
您在\\"dummy.pdf\\"
和\\"unnamed.jpg\\"
之间使用的字符实际上不是逗号! 它看起来像是一个逗号! 将其取下并更换为,
。
更新
正如@dbc所提到的,当前在您的代码中使用的字符是FULLWIDTH COMMA 。
固定的JSON是
JsonConvert.DeserializeObject<ContentModel>("{\"Message\":\"asdf\",\"Attachments\":[\"dummy.pdf\",\"unnamed.jpg\"]}"),
测试小程序:
using Newtonsoft.Json;
using System;
namespace ConsoleApp3
{
class Program
{
static void Main(string[] args)
{
var y = JsonConvert.DeserializeObject<ContentModel>("{\"Message\":\"asdf\",\"Attachments\":[\"dummy.pdf\",\"unnamed.jpg\"]}");
Console.WriteLine(JsonConvert.SerializeObject(y, Formatting.Indented));
Console.ReadKey();
}
}
public class ContentModel
{
public string Message { get; set; }
public string ContentType { get; set; }
public string[] Attachments { get; set; }
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.