从databinder.eval函数中提取几个字符

时间:2012-03-12 13:26:55

标签: c# asp.net listview

我有一个名为listview1的列表视图。 我使用Questiontitle的值从数据库绑定它。

 <ItemTemplate>
<asp:LinkButton ID="questionlink" runat="server" Text='<%# Eval("Questiontitle") %>' ></asp:LinkButton>
 </ItemTemplate>

但我只想要&lt;%#Eval(“Questiontitle”)%&gt;中的少数几个字符。值 我们先说20个字符

如何管理。

3 个答案:

答案 0 :(得分:0)

您无法在EVAL中直接使用子字符串。相反,您在查询中使用子字符串,或者您可以在网格的RowDataBound事件中使用。

答案 1 :(得分:0)

ASPX:

<ItemTemplate>
<asp:LinkButton ID="questionlink" runat="server" Text='<%# ProcessData(Eval("Questiontitle")) %>' ></asp:LinkButton>
 </ItemTemplate>

C#

protected string ProcessData(obj val)
{
  if(val!=null) {return val.ToString().Length > 20 ? val.ToString().Substring(0,20) + "...." : val.ToString();}
  return "";
}

答案 2 :(得分:0)

检查以上关于如何使用SQL

的示例
select substring ('This is such a long I mean soooooooooooooooooooooooooooooooooooooooo long question',1,15)as question

结果:

This is such a

MSDN:SubString