【发布时间】:2015-05-28 22:43:53
【问题描述】:
当我通过 WCF 将此 DTO 发送到我的服务器端时,我收到此错误:
尝试序列化参数http://tempuri.org/:objects 时出错。 InnerException 消息是“枚举” 值“3”对“LPFLogger”类型无效,无法序列化。 确保存在必要的枚举值并标有 如果类型具有 DataContractAttribute,则为 EnumMemberAttribute 属性 属性。'。有关详细信息,请参阅 InnerException。
我的 DTO 没有 DataContract 属性,我根本不使用它们。默认情况下不需要它。
为什么值 3 有问题?因为我的枚举只有 0,1,2 ?
public class MyObjectDTO
{
public int Id { get; set; }
public int Size { get; set; }
public LPFProcessor Processor { get; set; }
public LPFAccess Access { get; set; }
public LPFLogger Logger { get; set; }
}
public enum LPFLogger
{
None = 0,
EventLogger,
TempLogger
}
【问题讨论】:
-
制作枚举 LPFLogger : int 没有帮助。