这个问题在这里已经有了答案:
Get int value from enum in C#
(29 个回答)
7年前关闭。
我有以下枚举:
public enum BikeType : byte
{
Road = 0,
Mountain = 1
};
当我尝试将它传递给 a 时,我检索字节的“字符串”表示,而不是数值:
string str = string.Format("Road bike has a byte value of {0}", BikeType.Road);
"Road bike has a byte value of Road"
我想要字节值(0)。我究竟做错了什么?
谢谢
最佳答案
您需要强制转换为 int
string str =
string.Format("Road bike has a byte value of {0}", (int)BikeType.Road);
如果你不施放它,它会调用
ToString
在 BikeType.Road
这将返回 Road
关于c# - 具有基础类型的枚举。无意中返回字符串表示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21020014/