web-dev-qa-db-ja.com

ビューのViewBagからブール値を取得するにはどうすればよいですか?

ViewBagからブール値を受信しようとしています。

しかし、問題は私が使用している価値を受け取ることです:

_var test = '@ViewBag.Test'
_

このように、値は_'True'_または_'False'_(文字列)になります。もちろん、if (test == 'True')のようなものを使用できますが、ViewBagブール値から直接取得する方法、または少なくとも変換する方法はありますか?

編集:

Javascript部分でViewBag値を取得する必要があります。

6
Olegs Jasjko

コントローラコードではViewBag.Test = true;

ビューコードは

var test=@(ViewBag.Test.ToString().ToLower());
console.log(test);

現在、変数テストのデータ型はブール値です。したがって、次を使用できます。

if(test)
    alert('true');
else 
    alert('false')
4
J Santosh

コントローラで値がboolの場合は、cshtmlページを使用します

bool test='@ViewBag.Test';

viewbagはキャストする必要がないので、bool変数に値を割り当てると、view(cshtml)ページにbool値が与えられると思います。

4

ボックス化解除を使用できます。

@((bool)(ViewBag.Test??false))
1
Leigh.D

必要なもの:

<script>
   var test = '@ViewBag.Test';
   if(test)
       {console.log(test);}
   else
       {console.log(test);};
</script>
0
Thanh Binh

引用符を削除するだけですvar test = @ViewBag.Test

0
Troopers