J'ai un enum dans un espace de nom de bas niveau. J'aimerais fournir une classe ou une somme dans un espace de noms de niveau intermédiaire qui "hérite" de la somme de bas niveau.
namespace low
{
public enum base
{
x, y, z
}
}
namespace mid
{
public enum consume : low.base
{
}
}
J'espère que cela est possible, ou peut-être une sorte de classe qui peut prendre la place de l'enum consommer qui fournira une couche d'abstraction pour l'enum, mais encore laisser une instance de cette classe accéder à l'enum.
Qu'en pensez-vous ?
EDIT : L'une des raisons pour lesquelles je ne suis pas passé aux constantes dans les classes est que l'enum de bas niveau est nécessaire à un service que je dois consommer. On m'a donné les WSDLs et les XSDs, qui définissent la structure comme un enum. Le service ne peut pas être modifié.
1 votes
Une option est codeproject.com/Articles/20805/Enrichissement-C-Enums
1 votes
Vous pouvez utiliser un Int32 et le convertir en votre enum si nécessaire.