C#: Enroulant une Enum à l'intérieur de l'autre (ie. la mise en miroir de l'autre enum/copier...)

Voici mon problème: j'ai un objet qui est de la référence d'une DLL. Je voudrais d'autres objets pour faire référence à mon objet, sans avoir à aussi inclure une référence à la DLL elle-même.

C'est très bien pour la plupart, sauf qu'il est un enum dans la DLL que je voudrais répliquer. Je pourrais écrire les enum, ligne par ligne, mais je me demandais si il y a une meilleure façon de le faire.

ie.

Disons que la DLL est le suivant enum:

public enum dllEnum
{
  value1,
  value2,
  value3
}

Je pouvais faire ce qui suit:

public enum myEnum
{
  value1,
  value2,
  value3
}

ou mieux encore:

public enum myEnum
{
  value1 = dllEnum.value1,
  value2 = dllEnum.value2,
  value3 = dllEnum.value3
}

Mais chacun de ces cas a moi d'écrire l'intégralité de l'enum moi-même. Je préfère juste être capable d'envelopper l'ensemble de l'enum comme mon propre, la préservation de l'index de l'original enum.

Quelque chose le long des lignes de:

public enum myEnum
{
  Enum.GetValues(dllEnum)
}

OriginalL'auteur AlishahNovin | 2009-12-02