2011-11-16 49 views
7

tôi có một danh sách các giá trị enum:Chuyển đổi Danh sách <Enum> vào danh sách <string>

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

Tôi muốn đầu ra nó như là một danh sách dấu phẩy tách ra. (EG: "Email, Handhold")

Cách sạch nhất để thực hiện việc này là gì?

+0

tự hỏi liệu điều này có thể sử dụng phản ánh .. – droidbot

Trả lời

12

Có lẽ đây:

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

Bạn có thể đọc thêm về các phương pháp String.Join tại MSDN. Phiên bản cũ hơn của String.Join không bị quá tải mất IEnumerable. Trong trường hợp đó, chỉ cần gọi ToArray() sau khi chọn.

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

bạn có thể sử dụng LINQ:

string.Join(", ", SupportedNotificationMethods.Select(e => e.ToString()); 
Các vấn đề liên quan