2

我一直在寻找几个小时,我不知道如何解决我的问题。我正在编写一个服务堆栈 API,我需要使用它的人只传入有效值。

我有一个客户端节点,下面有名字、姓氏、地址、状态等。

现在对于状态字段,它需要以某种方式进行枚举,因此他们只能选择例如(NT,NSW,WA,SA)

所以他们会像 objClient.State = State.NT;

顺便说一句,这是在带有单声道框架的 C# asp.net 中。

现在我尝试的是做一个私有静态只读字符串 BLABLABLA;但这不起作用,它没有被序列化。所有我的 DTO 在适当的地方都有 [DataContract] 和 [DataMember] 标签。我尝试在我尝试但没有运气的枚举上方做 [Flags]。

所以我现在被困住了。我不希望 api 的使用者只传入一个字符串值。谁能帮我解决一些建议如何做到这一点?

4

1 回答 1

1

我使用以下方法解决了这个问题:

[DataContract]
public enum Color
{
    [DataMember]
    Red,
    [DataMember]
    Blue,
    [DataMember]
    Green,
}
于 2013-05-13T00:27:08.810 回答