Проблема десериализации .NET 4: незаконный вызов зарезервированного метода - PullRequest
1 голос
/ 18 ноября 2010

На некоторых, но не на всех компьютерах, когда мы пытаемся десериализовать некоторый XML с помощью (написано на C #) System.Xml.Serialization.XmlSerializer.Deserialize(TextReader textReader)
мы получаем ошибку, связанную с безопасностью, описанную в сообщении об ошибке и трассировке стека ниже. Исключение выдается сборкой, которая генерируется .NET при сериализации / десериализации. В приведенной ниже трассировке стека AggregateElement происходит от Element. У нас не было никаких проблем с .NET 3.5, и наш код не изменился с тех пор, как мы обновились до .NET 4 У кого-нибудь есть идеи о том, что и почему это?

Ошибка: недопустимый вызов зарезервированного метода «Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderSheet.Read53_AggregateElement ()» из «Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderSheet.Read72_Element () '. 100. *

Стек вызовов Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderSheet.Read53_AggregateElement (Boolean isNullable, Boolean checkType)

в Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderSheet.Read72_Element (Boolean isNullable, Boolean checkType)

в Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderSheet.Read74_Section (Boolean isNullable, Boolean checkType)

в Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderSheet.Read70_SubForm (Boolean isNullable, Boolean checkType)

в Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderSheet.Read72_Element (Boolean isNullable, Boolean checkType)

в Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderSheet.Read74_Section (Boolean isNullable, Boolean checkType)

в Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderSheet.Read70_SubForm (Boolean isNullable, Boolean checkType)

в Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderSheet.Read92_Sheet (Boolean isNullable, Boolean checkType)

в Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderSheet.Read93_Sheet ()

в System.RuntimeMethodHandle._InvokeMethodFast (метод IRuntimeMethodInfo, цель объекта, аргументы объекта [], SignatureStruct & sig, метод MethodAttributes, атрибуты атрибутов, RuntimeType typeOwner)

в System.RuntimeMethodHandle.InvokeMethodFast (метод IRuntimeMethodInfo, цель объекта, аргументы объекта [], сигнатура сигнатуры, метод methodAttributes, атрибуты метода, атрибуты метода TimetimeType, типOwner)

в System.Reflection.RuntimeMethodInfo.Invoke (Object obj, BindingFlags invokeAttr, связыватель Binder, параметры Object [], CultureInfo culture, логическое skipVisibilityChecks)

в System.Reflection.RuntimeMethodInfo.Invoke (Object obj, BindingFlags invokeAttr, связыватель Binder, параметры Object [], CultureInfo culture)

в System.Xml.Serialization.TempAssembly.InvokeReader (отображение XmlMapping, события XmlReader xmlReader, XmlDeserializationEvents, String encodingStyle)

в System.Xml.Serialization.XmlSerializer.Deserialize (XmlReader xmlReader, String encodingStyle, XmlDeserializationEvents events)

в System.Xml.Serialization.XmlSerializer.Deserialize (TextReader textReader)

...