如何将枚举传递给函数以及如何在 if 语句 c# 中评估枚举

How to pass Enum to function and how to evaluate enum in if statement c#

假设我有 class 其中有一个枚举。所以当有人调用 class 函数时,他们会向函数发送一个枚举值,我们喜欢从函数中使用 if 语句来检查发送了什么值。

public class BBALogger
{
enum MsgType
{
    Error ,
    Info 
}

public void WriteToLog(String inLogMessage, Enum msgtype)
{
     if(msgtype==MsgType.Error)
     {

     }
     else if(msgtype==MsgType.info)
     {

     }
}
}

这样调用函数

class BBALogger x = new BBALogger()
x.WriteToLog("Hello",MsgType.Error);

我收到错误消息。我在哪里犯了错误。

您可以简单地使用 MsgType 而不是 Enum

public void WriteToLog(String inLogMessage, MsgType msgtype)
{
     if(msgtype==MsgType.Error)
     {

     }
     else if(msgtype==MsgType.info)
     {

     }
}