将列表<Enum>转换为列表<string>



我有一个枚举值列表:

public static readonly List<NotifyBy> SupportedNotificationMethods = new List<NotifyBy> {
   NotifyBy.Email, NotifyBy.HandHold };

我想以逗号分隔的列表输出它。(例如:"Email, Handhold")

最干净的方法是什么?

也许:

var str = String.Join(", ", SupportedNotificationMethods.Select(s => s.ToString()));

您可以在MSDN上阅读更多关于String.Join方法的信息。旧版本的String.Join没有接受IEnumerable的重载。在这种情况下,只需调用ToArray()后选择。

你可以使用linq:

string.Join(", ", SupportedNotificationMethods.Select(e => e.ToString());
String.Join(", ", SupportedNotificationMethods.Select(e => e.ToString()).ToArray());

最新更新