覆盖枚举类型使用Web服务

时间:2011-04-06 06:59:04

标签: c# .net web-services enums

我实际上是在C#.NET的控制台应用程序中使用Web服务 这个服务是用PHP编写的,我没有源代码。所以在Enum类型中他们有他们想要的一切:“?” “” numebrs,string ...

所以当我的应用程序解释它时,我有:Item,Item0 ......和XmlAttribute。

我想知道的是:是否有可能有一个覆盖这些枚举的类使“点”替换“。”。和其他每次更新我的网络参考时都没有删除?

感谢您的回复

1 个答案:

答案 0 :(得分:0)

嗯,我不确定你是否可以覆盖创建服务引用时生成的枚举。

也许这是一个适合您的解决方案:

生成服务引用时,生成的.cs文件是部分类。您可以使用相同的命名空间创建另一个部分类。在该类中,您可以创建返回转换的枚举类型的方法或属性。更新服务引用时,不会覆盖此文件。

示例:

(生成的服务引用类)

public partial class ServiceReferenceComplexType
{
    public enum EnumValues
    {
        Item0,
        Item1,
        Item2
    }
}

(自创部分课程)

public partial class ServiceReferenceComplexType
{
    public string GetCorrectEnumValue()
    {
        // Do your enum logic magic.
        EnumValues.Tostring();
    }
}

您现在可以使用ServiceReferenceComplexType.GetCorrectEnumValue()方法来检索您的值。