Есть ли способ использовать специальный символ при определении нового объекта - PullRequest
1 голос
/ 03 июня 2019

Я пишу бота, нужно добавить параметры json в мой пост-запрос Проблема, с которой я сталкиваюсь, заключается в том, что через некоторое время параметры, которые я хочу отправить, содержат специальные символы. Пример ниже описывает мою полную проблему

В моем примере ниже я сталкиваюсь с ошибкой с предопределенной переменной params в c # и со специальным символом

object parameters =
{
        [username] = "user",
        params = "param"
};

PostRequest(Url, parameters);

1 Ответ

1 голос
/ 05 июня 2019

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

public class Params
{
    public string cnt { get; set; }
    public string lastGlobalMessageTime { get; set; }
    public int lastId { get; set; }
}

public class RootObject
{
    public string __invalid_name__social[google-login] { get; set; }
    public string action { get; set; }
    public Params @params { get; set; }
    public string session { get; set; }
}

Затем вы можете создать экземпляр этого класса и соответственно присвоить свои значения

RootObject parameters = new RootObject();

parameters.social[google-login] = socialLoginVariable;
parameters.action = ActionVariable;
...

Примечание: Я использовал json2csharp, он говорит, что social[google-login] недействителен и не имеет смысла, вы можете удалить __invalid_name__ и просто использовать social[google-login] и посмотреть, будет ли это работать для вас

...