Я пытаюсь написать метод, который принимает объект и использует Unity JsonUtility или JsonHelper и возвращает сериализованную версию этого объекта. Когда я запускаю приведенный ниже код отладки, все работает правильно.
object t = new List<Player>
{
new Player
{
Name = "asdf",
ID = Guid.NewGuid().ToString()
}
};
if (t is IEnumerable<Player> list)
Debug.Log(JsonHelper.ToJson(list.ToArray()));
//Result {"Items":[{"ID":"eff6ca08-b464-4e57-9f2e-f49a0cb869ff","Name":"asdf"}]}
Однако мой метод не возвращает того же самого.
public void SeriailizeObject<T>(T obj)
{
if (obj is IEnumerable<T> list)
{
Debug.Log(JsonHelper.ToJson(list.ToArray()));
//Result {}
}
...
Кто-нибудь знает, можете ли вы сериализовать обобщение c список с JsonUtility Unity?