У меня проблема с xml-десериализацией и динамически загружаемыми сборками.Я загружаю свою сборку прямо из zip-файла в байтовый массив.Затем я загружаю эту сборку.Сборка содержит модель данных, которая должна быть десериализована с помощью XmlSerializer.Проблема в том, что я всегда получаю TypeInitializationException, если я пытаюсь загрузить свой XML.
Исключением является следующее (на немецком языке):
System.InvalidOperationException: Fehler im XML-Dokument (62,13). --->
System.TypeInitializationException: Der Typeninitialisierer für
"Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderOrder" hat eine
Ausnahme verursacht. ---> System.NullReferenceException: Der Objektverweis wurde
nicht auf eine Objektinstanz festgelegt.
bei Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderOrder..cctor()
Если я загружаю свою dll напрямую изdll-файл, а не из zip-файла в байтовый массив, XML может быть успешно десериализован.
В интернете я обнаружил, что проблема может быть в списках с собственными типами, но в решениях, которые я нашелне удалось решить мою проблему.
РЕДАКТИРОВАТЬ:
Я обнаружил, что не могу использовать универсальные списки с собственными типами, если я загружаю сборку черезбайтовый массив, как написано на другом сайте.Я не мог сказать, почему у меня сначала не было успеха с этими решениями, но после второй попытки это работает.Я сделал обходной путь с ArrayList, но я очень недоволен этим.Есть ли лучшее решение, где я могу использовать общие списки?Или, если нет лучшего решения, есть ли лучший Serializer / Deserializer для XML?