我有以下枚举:
public enum EReferenceKey { Accounts = 1,Emails = 3,Phones = 4 }
当我的枚举变量pk是Accounts时,我尝试将其转换为“01”
var a = pk.ToString("00");
它给了我以下例外:
格式字符串只能是“G”,“g”,“X”,“x”,“F”,“f”,“D”或“d”
谁能解释我做错了什么?
解决方法
在尝试格式化字符串之前,需要将其强制转换为int. Enum有自己的ToString实现,因此你的int格式字符串不正确.
var a = ((int)pk).ToString("00");