多くの if を避けるために、switch ステートメントを使用したいと考えています。だから私はこれをしました:
public enum Protocol
{
Http,
Ftp
}
string strProtocolType = GetProtocolTypeFromDB();
switch (strProtocolType)
{
case Protocol.Http:
{
break;
}
case Protocol.Ftp:
{
break;
}
}
しかし、列挙型と文字列を比較する際に問題があります。したがって、Protocol.Http.ToString() を追加すると、CONSTANT 評価のみが許可されるため、別のエラーが発生します。これに変えたら
switch (Enum.Parse(typeof(Protocol), strProtocolType))
それもありえない。では、私の場合、switch ステートメントを使用することは可能ですか?