[英]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.