c# – 当我尝试将枚举格式化为字符串时,为什么我的格式会给我一个错误?

前端之家收集整理的这篇文章主要介绍了c# – 当我尝试将枚举格式化为字符串时,为什么我的格式会给我一个错误?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有以下枚举:
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");
原文链接:https://www.f2er.com/csharp/92104.html

猜你在找的C#相关文章