将数据列表eval存储到变量中

本文关键字:变量 存储 eval 数据 列表 | 更新日期: 2023-09-27 17:58:17

是否有方法存储DataList中的字段?

string year = Eval("date");

我想对字符串year进行操作,如果可能的话,需要将其存储在变量中!

将数据列表eval存储到变量中

如果您使用Eval,我猜您是在数据绑定表达式中工作?如果是这样的话,通常情况下,对数据进行任何实际的后处理都是错误的,但如果必须这样做,则应该能够显式地进行如下转换:

string year = (string)Eval("date")

或者,如果变量本身不是字符串类型,则

string year = Eval("date").ToString()

更好的是,在页面中添加一个函数,接受对象参数并进行如下处理:

public string DoSomething(object value)
{
    var year = value.ToString();  // or alterinately...
    var year = value as string();
    if (!string.IsNullOrEmpty(year))
    {
        // do something to the year
        return year;
    }
    return ""; // default in case you can't process the value
}

然后,在您的ASP。NET页面,无论何时进行数据绑定。。。

 <%# DoSomething(Eval("date")) %>
<asp:Label ID="Label1" runat="server" Text='<%# GetLabelText(Eval("date")) %>' />

string GetLabelText(object date)
{
   if (date != null)
   {
        ...
        // here you can cast date to appropriate type (possibly DateTime) and
        // store that in a variable, manipulate it and return a text that would be 
        // displayed by Label1
   }
}