Добавьте JsonObject в JsonArray с помощью AOTC#

Место общения программистов C#
Ответить
Anonymous
 Добавьте JsonObject в JsonArray с помощью AOT

Сообщение Anonymous »

У меня есть следующий код C# в проекте .NET 9, который будет скомпилирован с помощью AOT:

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

var deviceEntries = new JsonArray();

foreach (string deviceId in deviceIds)
{
var deviceEntry = new JsonObject
{
["deviceId"] = deviceId
};

deviceEntries.Add(deviceEntry);
// more properties to be added to deviceEntry object depending on how it goes
}
Я получаю следующие предупреждения для вызова JsonArray.Add:

Предупреждение IL2026: использование члена «System.Text.Json.Nodes.JsonArray.Add(T)», который имеет «RequiresUnreferencedCodeAttribute», может нарушить функциональность при обрезке кода приложения. Создание экземпляров JsonValue с непримитивными типами несовместимо с обрезкой. Это может привести к сериализации непримитивных типов, в результате чего их члены могут быть обрезаны.


Предупреждение IL3050: использование члена «System.Text.Json.Nodes.JsonArray.Add(T)», который имеет «RequiresDynamicCodeAttribute», может нарушить функциональность при компиляции AOT. Создание экземпляров JsonValue с непримитивными типами требует генерации кода во время выполнения.

ИИ не может решить проблему, он только скажет мне добавить строку вместо объекта, но это совершенно не помогает.
Я использую JsonArray и JsonObject специально для того, чтобы построить бессхемную структуру данных, которую можно будет передать в качестве ответа по сети. Я уверен, что это должно как-то сработать. Но мне кажется, что System.Text.Json всегда мешает.

Подробнее здесь: https://stackoverflow.com/questions/798 ... y-with-aot
Ответить

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

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

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

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

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