ASP.NET с использованием Bind / Eval в .aspx в операторе If - PullRequest
18 голосов
/ 08 апреля 2011

в моем .aspx я ищу, чтобы добавить в оператор If на основе значения, полученного из привязки.Я пробовал следующее:

<% if(bool.Parse(Eval("IsLinkable") as string)){ %>                    
        monkeys!!!!!!
        (please be aware there will be no monkeys, 
        this is only for humour purposes)
 <%} %>

IsLinkable - это bool, пришедший из Binder.Я получаю следующую ошибку:

InvalidOperationException
Databinding methods such as Eval(), XPath(), and Bind() can only
be used in the context of a databound control.

Ответы [ 11 ]

0 голосов
/ 08 апреля 2011

Нам нужно увидеть остальную часть вашего кода, но сообщение об ошибке дает мне подсказку.Вы можете использовать ТОЛЬКО Eval, когда находитесь внутри элемента управления с привязкой к данным.Такие вещи, как повторитель, сетка данных и т. Д.

Если вы находитесь за пределами элемента управления с привязкой к данным, вы можете загрузить значение в переменную кода и сделать ее общедоступной.Затем вы можете использовать его в ASPX для условной обработки.

...