1. ホーム
  2. asp.net-mvc

CSHTMLページでのswitch文の実装

2023-12-24 21:06:26

質問

私は何か違うことをしようとしています。私はIDを含むビューを持っています。IDの値に基づいて、私は表示される私の見出しを変更したいと思います。次のようなものです。

@{ switch id
   case "test": @;<h1>Test Site</h1>
   case "prod": @:<h1>Prod Site</h1>
   break;
}

私はかなり多くのケース条件を持っているので、私はケースを使用することが最善であると考えています。どなたか、これをどのように実行し、動作させることができるかを提案できますか?私は多くの構文エラーを取得しているので、私はそれがうまくコーディングされていないかもしれないと思います。

どのように解決するのですか?

スイッチを完全にブロックで囲み、適切にブレイクさせる必要があります。

// Use the @{ } block and put all of your code in it
@{
    switch(id)
    {
        case "test":
            // Use the text block below to separate html elements from code
            <text>
                <h1>Test Site</h1>
            </text>
            break;  // Always break each case
        case "prod":
            <text>
                <h1>Prod Site</h1>
            </text>
            break;
        default:
            <text>
                <h1>WTF Site</h1>
            </text>
            break;                   
    }
}

なぜなら <h1> タグはそれ自体で囲まれた html ブロックであるため、このような場合には <text> は必要ないかもしれません。ただ、私の癖で入れてしまうのです。