我想在div中使用两个条件可见
Visible='<%# Eval("commenter_name").ToString() == username %> || username == admin'
它不起作用。我只能使用一个条件。有没有办法绕过这个?
答案 0 :(得分:3)
我假设ASP.NET
试试这个:
连接两个布尔结果(正如你通常在c#中所做的那样)。
Visible='<%#
Eval("commenter_name").ToString() == Eval("username").ToString()
||
Eval("username").ToString() == "admin"
%>'
或者,如果您有太多条件需要验证:
将其替换为函数
Visible ='<%# VerifyConditions(Convert.ToInt32(Eval("Id"))) %>'
并在您的codebehind(.aspx.cs)页面中定义这样的VerifyConditions:
public bool VerifyConditions(int Id)
{
string username= GetCurrentUser();
//obtain other variables, either through the bound row, or
//from the db based on the Id
//all your logics..
return true; //or false based on evaluation;
}
答案 1 :(得分:0)
您需要将表达式放在数据绑定表达式标记中。只要表达式导致bool
,它就会起作用Visible='<%# Eval("commenter_name").ToString() == Eval("username").ToString() || Eval("username").ToString() == "admin" %>'