2016-08-31 4 views
0

ファイルが関連付けられている場合と関連付けられていない場合があります。レコードにファイルが関連付けられていない場合は、リンク/ラベルを表示したくありません。私はこれがtenary演算子で実装するのはかなり簡単なことだろうと思ったが、私は、次の受信:テナント演算子とC#での評価.Net - 文字列をboolに変換できません

: CS0030: Cannot convert type 'string' to 'bool' 

この文私に

<asp:Label Visible='<%# Eval("supportingDocuments") == null ? "False" : "True" %>' id="supportingFileLink" runat="server" Text='Other' /> 

を含む行から生じ、これはそれが見ていることを意味しますEval("supportingDocuments") == nullを文字列として返し、ブール値として評価できる条件ではありません。私は条件の周りに括弧を追加しようとしましたが、これは何も変更されませんでした。

ありがとうございました。

EDIT:これはデータバインドされたGridViewコントロールです。以前は言及してくれなかったことを申し訳ありません。

+3

"偽" と "真の" ある文字列、ブール値ではない:

Visible='<%# Eval("supportingDocuments") == null ? false : true %>' 

またはより良いまだ、あなたはおそらくに簡素化することができます。 – mason

+0

"True"と "False"は技術的には文字列ですが、ASP.NET Webコントロールで可視プロパティを手動で定義する場合は、Visible = "false"の形式になっていますので、なぜ私のアプローチがうまくいかないのか不思議です。ありがとう! – KellyMarchewa

答えて

6

"True""False"の二重引用符を使用しないでください。

あなたが試みることができる:

Visible='<%# Eval("supportingDocuments") != null %>' 
+0

私はシンプルでエレガントな修正が大好きです。本当にありがとう! – KellyMarchewa

関連する問題