測試程序(.NET 2.0):爲什麼enum.ToString()會給出與調試器工具提示中顯示的結果不同的結果?
[Flags]
enum MyEnum
{
Member1 = 1,
Member2 = 2,
}
class Program
{
// Inspecting r shows "Member1 | Member2"
MyEnum r = MyEnum.Member1 | MyEnum.Member2;
// s = "Member1, Member2"
string s = r.ToString();
}
我本來期望.ToString()
返回與由豎線成員的字符串,但事實並非如此。
獎勵信息:在以逗號分隔的字符串上調用Enum.Parse()
成功,而爲其提供管道分隔的字符串失敗。
獎金信息 - 你可以重寫調試器如何顯示自己的類用[DebuggerDisplayAttribute] – Jimmy 2010-01-12 21:37:37
謝謝你的提示 - 我一直在想怎麼說已完成。 – 2010-01-12 21:43:41