如何在 C# 中将字符串转换为 Flags 枚举格式

Pau*_*l_T 5 c# enums type-conversion enum-flags

我有这个枚举:

[Flags]
public enum Countries
{
    None    = 0,
    USA     = 1,
    Mexico  = 2,
    Canada  = 4,
    Brazil  = 8,
    Chile   = 16
}
Run Code Online (Sandbox Code Playgroud)

我收到这样的输入字符串:

string selectedCountries = "Usa, Brazil, Chile";
Run Code Online (Sandbox Code Playgroud)

如何将其(在 C# 中)转换回:

var myCountries = Countries.Usa | Countries.Brazil | Countries.Chile;
Run Code Online (Sandbox Code Playgroud)

tyr*_*nid 9

使用Enum.Parse

例如Countries c = (Countries)Enum.Parse(typeof(Countries), "Usa, Brazil...");