1

我正在引用Enum在服务命名空间中公开类型的服务。生成代理时,该Enum类型不存在。是什么导致这种情况发生,我该如何解决?

注意:将其添加为Web 引用会生成类型,而作为服务引用则不会。

4

1 回答 1

2

如果您不使用Enum您的内部ServiceContract- 它可能不为人所知。您可以尝试使用KnownType并标记Enumas publicwithDataContract和每个Enum成员 as EnumMember

您还应该尝试将值显式分配给如下Enum类型:

[DataContract]
public enum EnumType
{
    [EnumMember]
    Value1= 0,
    [EnumMember]
    Value2 = 1
}

代替...

[DataContract]
public enum EnumType
{
    [EnumMember]
    Value1,
    [EnumMember]
    Value2
}
于 2012-06-21T15:12:42.547 回答