2016-04-02 7 views
0

ウェブ設定値に基づいてページに表示する2つのスクリプトがありますが、そのうちの1つを表示することしかできません回。Cshtmlページのロジックで、Web設定値に基づいて2つの異なるスクリプトを切り替える

@if (pageModel.ShowB || (pageModel.ShowA==1 && pageModel.ShowB==1)) 
{ 
<!--script to implement B--> 
} 
@if (pageModel.ShowA) 
{ 
<!--script to implement A--> 
} 

これが最善の方法でしょうか?

答えて

0

解決策は何も問題はありませんが、ロジックをコントローラに移動するか、ビューモデルを構築する場所に移動します。私は私のカミソリのファイルに論理を持たないことを好みます。

例えば、

public ActionResult Index(){ 
     if (pageModel.ShowB || (pageModel.ShowA==1 && pageModel.ShowB==1)) 
     { 
      ViewBag.PageScript = 'somescript.js' 
     }else 
     { 
      ViewBag.PageScript = 'otherscript.js' 
     } 

は、次にビューで、私はちょうどこの

<script type="..." src="@ViewBag.PageScript"></script> 
ようなスクリプトを行うだろう
関連する問題