将(CustomClass的)泛型.List转换为XML时,枚举值未正确序列化
我有一个ImportedVehicle的Generic.ListOf-ImportedVehicle是一个简单的类,如下所示 存在一个标记为公共的枚举属性 当我使用XMLSerializer序列化为XML时,枚举的值只是设置为它的默认值,该默认值未分配,实际上并不表示在代码中设置的值 你知道为什么枚举的值不能正确序列化吗将(CustomClass的)泛型.List转换为XML时,枚举值未正确序列化,xml,vb.net,serialization,enums,Xml,Vb.net,Serialization,Enums,我有一个ImportedVehicle的Generic.ListOf-ImportedVehicle是一个简单的类,如下所示 存在一个标记为公共的枚举属性 当我使用XMLSerializer序列化为XML时,枚举的值只是设置为它的默认值,该默认值未分配,实际上并不表示在代码中设置的值 你知道为什么枚举的值不能正确序列化吗 <Serializable()> _ Public Class ImportedVehicle Public Property Driver_Na
<Serializable()> _
Public Class ImportedVehicle
Public Property Driver_Name As String = ""
Public Property Driver_AssignmentType As DriverAllocationTypeEnum = DriverAllocationTypeEnum.NotAllocated
End Class
<Serializable()> _
Public Enum DriverAllocationTypeEnum
NotAllocated = 1
NamedDriver = 2
PoolVehicle = 3
End Enum
XML输出,无论设置为Driver_AssignmentType的值为多少:
<?xml version="1.0" encoding="utf-16"?>
<ArrayOfImportedVehicle xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<ImportedVehicle>
<Driver_Name>Test Name</Driver_Name>
<Driver_AssignmentType>NotAllocated</Driver_AssignmentType>
</ImportedVehicle>
</<ArrayOfImportedVehicle>
回答了我自己的问题。我是在装傻。在序列化对象之前,枚举成员的值在代码中的其他位置意外重置。所以这与序列化过程无关