Десериализация XML с помощью встроенного AOTC#

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

Сообщение Anonymous »

Я хочу десериализовать XML-документ в объект C#.
Пример XML-документа

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



true
false
true
false
true
true
true
false
AcrossThenDown



LayoutGroup

false
true
True

4
UseParentOptions

true
LeftToRight
Regular
Default
-1
false
false
true
Vertical
false
false
Default




@4,Width=1318@3,Height=554
false
Normal
Default
Inherited
Top
0

Default
Default


0
1
0
1




None
false
Default


None
true
false
Default

Root

false
@1,X=0@1,Y=0
true
Root
Root
false
Always



Теперь я хочу десериализовать строку XML в объект C#.

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

[XmlRoot(ElementName = "property")]
public class Property
{
[XmlAttribute(AttributeName = "name")]
public string Name { get; set; }
[XmlText]
public string Text { get; set; }
[XmlElement(ElementName = "property")]
public List
 property { get; set; }
}

[XmlRoot(ElementName = "XtraSerializer")]
public class XtraSerializer
{
[XmlElement(ElementName = "property")]
public List Property { get; set; }
[XmlText]
public string Text { get; set; }
}

XtraSerializer GetXtraSerializer(string xml)
{
XmlSerializer serializer = new XmlSerializer(typeof(XtraSerializer));
using StringReader reader = new (xml);
return (XtraSerializer)serializer.Deserialize(reader);
}
До публикации он работает нормально. После публикации с использованием Native AOT возникает исключение.
В XML-документе (0, 0) произошла ошибка.
System.Xml.Serialization.XmlSerializer.Deserialize(XmlReader xmlReader, String кодированиеStyle, события XmlDeserializationEvents)

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

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

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

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

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

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