Are*_*yst 4 .net c# enums casting
假设我有枚举,底层类型是字节:
enum EmpType : byte
{
Manager = 1,
Worker = 2,
}
Run Code Online (Sandbox Code Playgroud)
我可以将一些int文字转换为此枚举的基础类型(在本例中为byte)吗?
这样的东西不起作用(错误:";预期"):
byte x = (Enum.GetUnderlyingType(typeof(EmpType)))15;
Run Code Online (Sandbox Code Playgroud)
我可以在不明确写入(byte)15的情况下转换为基础类型吗?
谢谢.
我认为以下内容可行.但是我不确定它会在所有情况下都能让你获得理想的行为.
var x = Convert.ChangeType(15, Enum.GetUnderlyingType(typeof(EmpType)))
Run Code Online (Sandbox Code Playgroud)