JsonConvert.DeserializeObject๋ฅผ ๋ง๋๋ ๋ฐฉ๋ฒ
์๋ฅผ ๋ค์ด '๋ถ์ผ์น'๋ฅผ ์ ์ํฉ๋๊น? ์ผ๋ฐ์ ์ผ๋ก ํ์์ด ์๋ชป๋ json(๋๋ ์ ํจ์ฑ ๊ฒ์ฌ ์ ์ฝ ์กฐ๊ฑด์ ์ ๋ฌํ์ง ์๋ json)์ ์ด ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ๋ํ ์์ธ๋ฅผ ํธ๋ฆฌ๊ฑฐํฉ๋๋ค. ๋น์ ์ ๊ทธ๊ฒ๋ค์ ์ก์ ์ ์์ง๋ง ๊ทธ๊ฒ์ ์์ฌ์ค๋ฌ์ด ์ผ์ ๋๋ค.
์๋ฅผ ๋ค์ด:
ConditionSetting settingObj = new ConditionSetting();
string settingJson = JsonConvert.SerializeObject(settingObj);
// trying to parse a 'ObjectLayout' object from a 'ConditionSetting' json.
// here i expect to got a null return value or an exception,
// but infact i got a non-null 'ObjectLayout' object
ObjectLayout layoutObj = JsonConvert.DeserializeObject<ObjectLayout>(settingJson);
print(layoutObj == null); // console print False
ํด๋์ค ์ ์:
// ObjectLayout.cs
[System.Serializable]
public class ObjectLayout
{
public bool IsSettled;
public string Name;
public Position Position;
public Rotation Rotation;
}
// ConditionSetting.cs
[System.Serializable]
public class ConditionSetting
{
public string PlanName;
public Env Env;
public Target Target;
public Tank Tank;
public int TankCount;
public Shell Shell;
public Fuze Fuze;
}
/////////////////////////////////////////////////////////////////////////////////
JSON ๊ฐ์ด ํ์ํ ๊ฒฝ์ฐ [Required]
์์ฑ์ ์
๋ ฅํ ์ ์์ต๋๋ค.
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
JSON ๊ฐ์ด ํ์ํ ๊ฒฝ์ฐ
[Required]
์์ฑ์ ์ ๋ ฅํ ์ ์์ต๋๋ค.