有没有办法从DataList存储字段?
如
string year = Eval("date");
我想对字符串年进行操作,如果可能,需要将其存储在变量中!
答案 0 :(得分:2)
如果你正在使用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")) %>
答案 1 :(得分:1)
<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
}
}