在Azure函数内反序列化XML时遇到麻烦,其中类型在.NET Standard 2.0项目中定义。
反序列化xml时,我得到一条InvalidOperationException消息There is an error in XML document
,内部FileLoadException消息Could not load file or assembly 'netstandard, Version=2.0.0.0, ...
将TargetFramework从netstandard2.0更改为net461可以解决问题,并且可以对xml进行反序列化。
为什么我不能将.NET Standard与XmlSerializer一起使用?我推测这与XmlSerializer有关(因为它可以动态生成文件),也许它与Azure功能的组合?
两个项目:
反序列化代码位于Entities项目中,如下所示:
var reader = XmlReader.Create(stream, settings);
var serializer = new XmlSerializer(typeof(MyClass));
var utalarmering = serializer.Deserialize(reader) as MyClass; //exception thrown here