ASP.NET Web フォーム バインディング式を使用して、トリプル ネストされた if ステートメントを使用する必要があります。私は次のことを試しました:
<asp:TemplateField HeaderText="Price">
<ItemTemplate>
$ <%# Convert.ToBoolean(Eval("TierPricing")) ? Eval("PraviTier") + " per feet" : Convert.ToBoolean(Eval("IsPricingIndex")) ? Eval("ProductTierPrice") + " per feet" : Convert.ToString(Eval("SubCategoryName"))=="Custom kits" ? Eval("Price") + " per feet" : Eval("Price") + " per package" %></p>
</ItemTemplate>
</asp:TemplateField>
問題は、最初の if ステートメントで発生します。書きたい値を書き込んでいません ... :/ 誰かがこの if ステートメントを適切にフォーマットする方法を教えてくれますか??
Eval("PraviTier") の書き込み - 1.5 Eval("ProductTierPrice") の書き込み - 1.25
代わりに Eval("PraviTier") は 1.25 の値を書き込んでいます...なぜですか???
ここに私が何を意味するかを示す写真があります:
ヒントはありますか??
PS 最初の If ステートメントが完全に無視されているかのように?!
編集:ストアドプロシージャが返すものを確認しました...データベースでEval( "TierPricing")がtrueに設定されています...ここで何が問題になる可能性がありますか?:/