2013-03-10 5 views
0

Я хочу использовать два условия для видимой внутри DIVкак я использую два условия для видимого атрибута внутри DIV

Visible='<%# Eval("commenter_name").ToString() == username %> || username == admin' 

его не работает. Я могу использовать только одно условие. есть ли способ обойти это?

+0

- это переменные, используемые пользователем, из источника данных? –

+0

asp, да, спасибо много .... – HeisenBerg

ответ

0

Вам нужно будет поместить свои выражения в теги выражения привязки данных. Она будет работать до тех пор, как результаты экспрессии в BOOL

Visible='<%# Eval("commenter_name").ToString() == Eval("username").ToString() || Eval("username").ToString() == "admin" %>' 
3

я предполагая ASP.NET

попробовать это:

сцепить два логических результатов (как вы обычно делаете в C#).

Visible='<%# 
      Eval("commenter_name").ToString() == Eval("username").ToString() 
      || 
      Eval("username").ToString() == "admin" 
     %>' 

в качестве альтернативы, если вы слишком много условий, чтобы проверить:

заменить его функции

Visible ='<%# VerifyConditions(Convert.ToInt32(Eval("Id"))) %>' 

и определить VerifyConditions, как это в вашем отделенного кода (.aspx.cs) страницы:

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; 
} 
Смежные вопросы