Подтвердить что ты не робот

Методы привязки данных, такие как Eval(), XPath() и Bind(), могут использоваться только в контексте управления базой данных

Я получаю следующую ошибку

Способы привязки данных, такие как Eval(), XPath() и Bind(), могут использоваться только в контексте управления базой данных.

но все, что я пытаюсь сделать, находится внутри элемента управления ASP.NET REPEATER

<% if ( Eval("Message").ToString() == HttpContext.Current.Profile.UserName) %>
<% { %>

           <asp:ImageButton runat="server" etc.... />
<% } %>
4b9b3361

Ответ 1

Синтаксис

<%# Eval("...") %>

Вы можете сделать что-то вроде

<asp:ImageButton Visible='<%# ShowImg(Eval(Container.DataItem,"Message")) %>' />

и в вашем коде:

boolean ShowImg(string msg)
{
     return (msg == HttpContext.Current.Profile.UserName);
}

Ответ 2

Альтернативой является следующее:

<asp:ImageButton runat="server" Visible='<%# Eval("Message").ToString() == HttpContext.Current.Profile.UserName %>' />

Тогда код не нужен.

Ответ 3

Слишком поздно, но я бы хотел ответить на мой вопрос, что я использовал для этого:

<%# Eval("Message").toString()== HttpContext.Current.Profile.UserName)?"<asp:ImageButton runat="server" etc.... />" :""%>

Теперь отображается только кнопка изображения, если сообщение равно имени пользователя.

Это может помочь любому другому в той же ситуации.

В моей ситуации мне нужно было проверить нулевую и пустую строку... поэтому я реализовал, как показано ниже:

<%# Eval("DateString")!= null && Eval("DateString")!= ""? "<span class='date'>"+Eval("DateString") + "</span>":"" %>

Спасибо

Ответ 4

Другой способ его реализации:

public string nonImage() {
    string imgTag = "", Article_OwnerID = "", Article_ID = "", Article_OwnerType = "", imgSrc = "";
    DataTable DtArticles = SE_Article.GetArticlesList(UserID, UserID, ProfileType, CounterOfPage, CountPerPage, (short) SE_Action.OwnerType.user, SE_Security.CheckInjection(TxtSearch.Text.Trim()), CategoryID, "all_articles", DrpOrderBy.SelectedValue, DrpSort.SelectedValue);
    if (DtArticles != null && DtArticles.Rows.Count > 0) {
        Article_OwnerID = DtArticles.Rows[0]["Article_OwnerID"].ToString();
        Article_ID = DtArticles.Rows[0]["Article_ID"].ToString();
        Article_OwnerType = DtArticles.Rows[0]["Article_OwnerType"].ToString();
    }
    if (SE_Article.GetArticleCover(Convert.ToInt32(Article_OwnerID), Convert.ToInt32(Article_ID), Convert.ToInt16(Article_OwnerType)) != System.Configuration.ConfigurationManager.AppSettings["NoPhotoArticleThumb"]) {
        imgSrc = SE_Article.GetArticleCover(Convert.ToInt32(Article_OwnerID), Convert.ToInt32(Article_ID), Convert.ToInt16(Article_OwnerType));
        imgTag = "<img class='img_article_cover' src='" + imgSrc + "' alt='مقاله" + Article_ID + "' />";
    }
    return imgTag;
 }


 <% nonImage(); %>