deserialization 메서드를 작성 하느라 바쁘지만 deserialized 개체에 값이 채워지지 않았습니다. 테스트 클래스에서 메서드의 핵심을 테스트하고 있습니다.
[TestMethod]
public void DeserializeObject_WithReader()
{
string json = "{\"objectName\":\"joe\",\"objectAge\":30,\"objectDimensionX\":148.25,\"objectDimensionY\":95.87}";
using (StringReader reader = new StringReader(json))
{
using (JsonTextReader jsonReader = new JsonTextReader(reader))
{
JsonSerializer ser = JsonSerializer.CreateDefault();
var t = ser.Deserialize<SerializedObjectTestClass>(jsonReader);
}
}
}
채우려는 테스트 클래스는 다음과 같습니다.
public class SerializedObjectTestClass
{
private string ObjectName { get; set; }
private int ObjectAge { get; set; }
private decimal ObjectDimensionX { get; set; }
private decimal ObjectDimensionY { get; set; }
}
Newtonsoft Json.NET은 기본적으로 비공개 속성을 직렬화 / 역 직렬화하지 않으므로 공개하거나 다음으로 표시해야합니다 JsonPropertyAttribute
.
public class SerializedObjectTestClass
{
public string ObjectName { get; set; }
....
}
또는:
public class SerializedObjectTestClass
{
[JsonProperty]
private string ObjectName { get; set; }
....
}
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다