我正在开设一个活动课程。 目前有两个枚举。
[Flag]
public enum Status
{
statusA,
statusB,
statusC,
statusD,
}
[Flag]
public enum StatusType{
Request,
Success,
Fail,
Start,
End
}
我希望能够举起事件,例如Action RequestingStatusA(Status.StatusA& StatusType.Request)。 这当然会给出错误。反正是在运行中将它们组合在一起但是将它作为一个签名,以便事件处理程序能够识别它。
我甚至可以这样做吗? 提前谢谢。
答案 0 :(得分:3)
没有。不仅如此,如果您尝试映射未转换的位值,您将会发生碰撞 - 所以不要盲目考虑转换为int
:)
为什么不创建(并传递)包含两个枚举类型值的新类型?
struct RequestStatus {
// implement as desired
public StatusType Type { get; set; }
public Status Status { get; set; }
}
Action RequestingStatusA (RequestStatus status) {
..
}