【发布时间】:2020-07-06 18:28:46
【问题描述】:
我试图避免使用枚举,而是使用枚举类,例如此处https://docs.microsoft.com/en-us/dotnet/architecture/microservices/microservice-ddd-cqrs-patterns/enumeration-classes-over-enum-types
现在我有下面的例子
public class Dto
{
public string Name {get;set;}
public StatusType Status {get;set;}
}
public class StatusType : Enumeration
{
public static readonly StatusType Active = new StatusType (1, "Active");
public static readonly StatusType Inactive = new StatusType (2, "Inactive");
}
当我尝试反序列化 Dto 时,例如
var message = JsonConvert.DeserializeObject<Dto>(test);
我收到一个错误“将值“Active”转换为“StatusType”时出错。
是否可以使用或创建一个转换器,将值“Active”实际转换为适当的 StatusType?
【问题讨论】:
-
Active是静态只读字段 -
这是一个问题还是一个陈述:)
-
这是一个声明。你可以看到它是静态的。
-
好吧,我想我们都可以看到它,这使得这种说法毫无用处。