Сериализация объекта Unity для Json - PullRequest
0 голосов
/ 03 сентября 2018

Я пытаюсь просто сериализовать объект в json в Unity. Я нашел несколько статей на эту тему, но, похоже, ничего не работает. Он не генерирует исключение напрямую, но не конвертирует объект в строку json. Я исследовал довольно сильно и пробовал различные образцы. Я не уверен, является ли проблема классом или логикой, вызывающей преобразование в json. Я могу легко конвертировать, используя .net, но это для Unity в MonoScript, поэтому процесс кажется немного другим. Я предполагаю, что когда вы конвертируете объект в строку json, база не должна указываться как «ноль». Это также передает пустую строку json после преобразования.

enter image description here

Класс входа пользователя:

    using UnityEngine;
using System.Collections;
using System;

[Serializable]
public class UserLogIn : MonoBehaviour
{
    public string Email;
    public string Password;
}

Вот мой код в скрипте единства:

private UserLogIn _LogIn = new UserLogIn();

    public void SetText(string text)
    {
        //[SerializeField]
        //UserLogIn _LogIn = new UserLogIn();
    //WhiteBoxGamingTestRequest();  
    _LogIn.Email = "testemail@gmail.com";
        _LogIn.Password = "12345";
        string json = JsonUtility.ToJson(_LogIn);
        Debug.Log(json);

        //User_LogIn(_login);

        //text = _bolResponse.ToString();
        //Text txt = transform.Find("Text").GetComponent<Text>();
        //txt.text = text;       
    }

Я пробовал это: Сериализация и десериализация Json и Json Array в Unity

, кажется, не работает до сих пор. Ищете предложения или исправления.

После преобразования json = {} это должна быть строка, содержащая значения. Json-конвертер Unity не работает?

Преобразование: enter image description here

1 Ответ

0 голосов
/ 03 сентября 2018

Я наконец нашел ответ. Чтобы сделать объект в Unity конвертируемым в json, он должен быть обычным объектом c #. Я не уверен, почему вы не можете использовать Mono Behavior, но это проблема моего класса. Поэтому я надеюсь, что это поможет кому-то еще в будущем, потому что сайт Unity был почти таким же чистым, как грязь.

    [System.Serializable]
public class UserLogIn
{
    public string Email;
    public string Password;
}

Вот как должна выглядеть строка json после преобразования:

{"Email":"testemail@gmail.com","Password":"12345"}

Также хотел дать кредит этому видео около 7:43 в него, вы можете начать видеть процесс конвертации https://youtu.be/oJrAT8L4BrA

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...