Unity сериализует некоторую часть класса до json - PullRequest
0 голосов
/ 08 апреля 2020

Я хочу отправить некоторую часть класса на сервер.

отправка информации

[Serializable]
public class SendingInfos
{
    public string tempID;
    public string playerLettersInHand;
    public string playerLettersMiddle;
    public int playerBet;
    public string playerLetterSent;

}

в настоящее время temID и playerBet имеет значение, а остальные равны нулю. В этом случае, если я использую

        string jsondata = JsonUtility.ToJson(sendingInfos);

это и отправь. Я посылаю часть класса, которая не является нулевой, или все это? Есть ли другой вариант, чтобы отправить часть этого? как

        string jsondata = JsonUtility.ToJson({ sendingInfos.tempID, sendingInfos.playerBet  });

Редактировать: причина, по которой я хочу отправить какую-то часть класса на сервер, заключается в том, чтобы максимально снизить трафик сети c на сервере. Кроме того, я мог бы сделать это, разделив класс на 2 class.however, если есть более простой способ, я хочу сделать это.

1 Ответ

0 голосов
/ 08 апреля 2020

Нормальная операция в этом случае - это просто сериализация всего объекта. Таким образом, вы можете быть уверены, что его можно десериализовать без дополнительных настроек. NULL должен обрабатываться автоматически AFAIK, поэтому при повторной сериализации вы должны получить тот же объект обратно (со всеми значениями, равными NULL или фактическим значением)

Обычно вы не отправляете только половину объекта, потому что вы поддерживаете договор между отправителем и получателем на полный объект, а не на половину или треть. Это кажется немного странным, и я не могу понять, почему вы этого хотите.

...