Comment convertir une chaîne en énumération (enum) en C# ?
Bonjour, collègues ! Je suis novice en C# et j'ai rencontré un problème. J'ai une énumération (enum) pour les statuts de commande :
```csharp
public enum OrderStatus
{
Pending,
Processing,
Shipped,
Delivered,
Cancelled
}
```
Je reçois le statut de l'utilisateur sous forme de chaîne, par exemple depuis un champ de texte ou depuis une réponse JSON d'une API. La chaîne peut être : "Pending", "Shipped" ou "Cancelled". J'ai besoin de convertir cette chaîne en la valeur d'énumération correspondante pour l'utiliser dans la logique du programme.
J'ai essayé d'assigner simplement la chaîne à une variable de type `OrderStatus`, mais le compilateur génère une erreur. J'ai tenté d'utiliser `Convert.ChangeType()`, mais cela n'a pas fonctionné non plus. La seule méthode que j'ai trouvée est d'écrire un énorme `switch` avec de nombreux `case` :
```csharp
OrderStatus status;
switch (inputString)
{
case "Pending":
status = OrderStatus.Pending;
break;
case "Processing":
status = OrderStatus.Processing;
break;
```