Инициализатор типа для 'Newtonsoft.Json.Utilities.JavaScriptUtils' вызвал исключение - PullRequest
0 голосов
/ 11 июня 2018

У меня проблемы с десериализацией JSON в соответствующий объект C #.

Мой сервер возвращает допустимый JSON: {"success":false,"message":"Please enter a valid Email Address."}

Мой сервер использует проект Laravel и код для возврата JSON:

return response()->json(['success' => false, 'message' => 'Please enter a valid Email Address.']);

Ошибка: «Инициализатор типа для« Newtonsoft.Json.Utilities.JavaScriptUtils »вызвал исключение».

Это происходит с различными версиями Newtonsoft.Json, включаяпоследний (11.0.2) и возвращающийся до 7.0.1.Раньше такой ошибки не было, но сегодня я обновил формы Xamarin (3.0.0.550146).

Информация об исключении здесь: https://pastebin.com/GWPJdj6T Строка 81 - это вызов JsonConvert.DeserializeObject

public class RegisterResponse
{
    [JsonProperty("success")]
    public bool Success { get; set; }
    [JsonProperty("message")]
    public string Messsage { get; set; }
}

public static async Task<string> RequestAccessCode(string email) {
    try {
        using (var client = new HttpClient()) {
            var response = await client.PostAsync(baseAddress + requestAccess, new FormUrlEncodedContent(new[] {
                    new KeyValuePair<string, string>("email", email.Trim())
            }));

            var responseContent = await response.Content.ReadAsStringAsync();
            var result = JsonConvert.DeserializeObject<RegisterResponse>(responseContent);
            return result.Messsage;
        }
    }
    catch (Exception exception) {
            return exception.FormatExceptionInfo(false);
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...