【问题标题】:Serializing an XML in c# with type class showing error在 C# 中序列化 XML,类型类显示错误
【发布时间】:2018-05-11 12:04:46
【问题描述】:
 Public class Test{
   public string name {get;set;}
   }

试图序列化这个类

XmlSerializer serlzer = new XmlSerializer(typeof(Test));

显示错误为 文件名、目录名或卷标语法不正确。 (来自 HRESULT 的异常:0x8007007B) + System.Runtime.InteropServices.Marshal.ThrowExceptionForHRInternal(int, System.IntPtr) + Microsoft.Win32.Fusion.ReadCache(System.Collections.ArrayList,字符串,uint) + System.Reflection.RuntimeAssembly.EnumerateCache(System.Reflection.AssemblyName) + System.Reflection.RuntimeAssembly.LoadWithPartialNameInternal(System.Reflection.AssemblyName,System.Security.Policy.Evidence,参考 System.Threading.StackCrawlMark) + System.Reflection.Assembly.LoadWithPartialName(字符串,System.Security.Policy.Evidence) + System.Xml.Serialization.TempAssembly.LoadGeneratedAssembly(System.Type,字符串,出 System.Xml.Serialization.XmlSerializerImplementation) + System.Xml.Serialization.XmlSerializer..ctor(System.Type,字符串) + System.Xml.Serialization.XmlSerializer..ctor(System.Type)

在 .NET 4.6.1 环境中的 Visual Studio 2015 中以 C# 交互方式完成所有这些操作

【问题讨论】:

  • 你得到一个运行时异常,但编译没有错误?
  • C# serialize a Classstackoverflow.com/questions/14326832/…上做一个简单的谷歌搜索
  • 这是 Roslyn 编译器中的一个问题。刚刚找到。

标签: c# .net xml serialization


【解决方案1】:

问题是为脚本程序集生成的程序集名称包含文件系统的无效字符 (#),当序列化程序尝试加载序列化程序集时,它会失败。

尝试再次重新安装程序集并查看是否有效,有时程序集包含无效字符。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-05-17
    • 1970-01-01
    • 2019-01-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多