Проблемы с десериализацией JSON и консольным вводом в консольном приложении C#C#

Место общения программистов C#
Ответить
Anonymous
 Проблемы с десериализацией JSON и консольным вводом в консольном приложении C#

Сообщение Anonymous »

У меня есть консольное приложение, в котором я хочу читать команды из входного файла и записывать соответствующие выходные данные в другой файл. Одна из моих команд-примеров выглядит так:

Код: Выделить всё

[{"command":"addItem","payload":{"id":1,"catId":1,"sId":1,"price":1.2,"quantity":1}}]
Я пытаюсь десериализовать эту команду с помощью System.Text.Json. Вот соответствующий фрагмент кода:

Код: Выделить всё

public class Input
{
public string Command { get; set; }
public object Payload { get; set; }
}

Код: Выделить всё

List command = JsonSerializer.Deserialize(commandLine);
Я решил использовать объект для свойства Payload, поскольку оно может различаться в зависимости от типа команды. Однако я столкнулся с проблемой, когда десериализация всегда возвращает нулевое значение во время отладки.
Кроме того, я читаю входной файл с помощью следующего кода:

Код: Выделить всё

string inputFilePath = Path.Combine(Directory.GetCurrentDirectory(), "input.txt");

if (!File.Exists(inputFilePath))
{
Console.WriteLine($"Not found: {inputFilePath}");
return;
}

string jsonContent = await File.ReadAllTextAsync(inputFilePath);
List commands = JsonSerializer.Deserialize

Подробнее здесь: [url]https://stackoverflow.com/questions/79044892/issues-with-json-deserialization-and-console-input-in-a-c-sharp-console-applicat[/url]
Ответить

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

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

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

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

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