2

多くの 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 ステートメントを使用することは可能ですか?

4

3 に答える 3