我实际上是在c# .NET的控制台应用程序中使用web服务这个服务是用PHP写的,我没有源代码。所以在枚举类型中他们有他们想要的:"?"."数字,字符串…
所以当它被我的应用程序解释时,我有:Item, Item0…
我想知道的是:是否有可能有一个类覆盖这些枚举有"点"取代"。"和其他不删除每次我更新我的网页参考?
感谢您的回复
我不太确定你是否可以覆盖在创建服务引用时生成的enum
也许这是一个适合你的解决方案:
生成服务引用时,生成的.cs文件是一个部分类。您可以使用相同的名称空间创建自己的另一个分部类。在该类中,您可以创建返回转换后的枚举类型的方法或属性。当你更新你的服务引用时,这个文件不会被覆盖。
的例子:
(生成的服务引用类)
public partial class ServiceReferenceComplexType
{
public enum EnumValues
{
Item0,
Item1,
Item2
}
}
(Self - created partial class)
public partial class ServiceReferenceComplexType
{
public string GetCorrectEnumValue()
{
// Do your enum logic magic.
EnumValues.Tostring();
}
}
你现在可以使用ServiceReferenceComplexType.GetCorrectEnumValue()方法来检索你的值