不知大家是否遇到过需要把自定义的Enum类型中各成员的名字输出到界面或文件中的情形, 若有遇到这样的需求时, 建议大家不要直接输出Enum.ToString.
当然前提是你在开发一个商业产品或者你的代码需要加以保护时才需要注意此问题. 因为此时编译好的可执行程序集可能需要用模糊化工具进行模糊化.
我相信, 点到此处大家应该都明白为什么不能直接用Enum.ToString()输出到界面或文件中了. 对, 就是因为模糊化后原先定义的Eunm类型中的成员的名字都被随机改变了. 最终的输出结果变成了不是你在模糊化前所看到的那样子了.
此问题虽非常浅显易懂, 但若未遇到过此情形或未有相关经验的但此时正打算用模糊化工具的朋友们也许会忽视这一点. 因此在这儿给个小提醒.