Ошибка выполнения при попытке преобразовать json, хранящийся в динамическом объекте, в объект словаря — Microsoft.CSharpC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Ошибка выполнения при попытке преобразовать json, хранящийся в динамическом объекте, в объект словаря — Microsoft.CSharp

Сообщение Anonymous »

В Blazor Server я вызываю веб-службу и сохраняю результаты в динамическом объекте. Я хочу либо преобразовать этот динамический объект в объект словаря, либо передать его методу, чтобы я мог записать его в файл. Но что бы я ни пытался сделать с объектом, кроме преобразования его в строку, я получаю ошибку времени выполнения:

Microsoft.CSharp.RuntimeBinder.RuntimeBinderException : Message = Лучшее соответствие перегруженного метода для 'System.Text.Json.JsonSerializer.Deserialize(System.Text.Json.JsonDocument, System.Text.Json.JsonSerializerOptions) ' имеет недопустимые аргументы

Мой код отлично работает в консольном приложении, но когда я пытаюсь запустить его на сервере Blazor, я получаю ошибку времени выполнения.< /p>
Вот мой код:
namespace BlazorWebAssembly.Server.Endpoints
{
public static class CybsAuthEndpoint
{
static SaveAuthData saveAuthData = new SaveAuthData();
private static string Id = string.Empty;
public static async void MapCybsCall(this WebApplication app)
{
ICallForCybsAuth cybsAuth = new CallForCybsAuth();
dynamic jsonObject = new ExpandoObject();
jsonObject = cybsAuth.RunAsyncJson();

var options = new JsonSerializerOptions { WriteIndented = true, Encoder = System.Text.Encodings.Web.JavaScriptEncoder.UnsafeRelaxedJsonEscaping };
var jsonString = JsonSerializer.Serialize(jsonObject, options);
Console.WriteLine(jsonString);

//**** This is what throws the Runtime Error:
var dict = System.Text.Json.JsonSerializer.Deserialize(jsonObject);
//****

app.MapGet("/cybersource", () => Results.Ok(jsonObject));
}
}
}


Подробнее здесь: https://stackoverflow.com/questions/762 ... o-a-dictio
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»