2011-03-22 60 views
1

我是新来ASP.NET使用变量asp.net中继器的eval

我可以在中继器使用变量的eval?或者我该如何使用它?

例如:在窗体加载后面

<%# DataBinder.Eval(Container.DataItem, lngHome) %> 

代码:

if (session["dilKod"] == "eng") 
{ 
    lngHome = "eng_detail" 
} 
else 
{ 
    lngHome = "tr_detail" 
} 

我在数据库表2个字段:eng_detailtr_detail

所以,我怎么可以用这样<%# DataBinder.Eval(Container.DataItem, lngHome) %>

对不起,我的英语不好:)

回答

4

lngHome公共财产?然后,你可以使用:

<%# lngHome %>

确保您初始化lngHome具有缺省值或绑定发生之前将其设置。因此,移动这Page_init代替:

if (session["dilKod"] == "eng") 
{ 
    lngHome = "eng_detail" 
} 
else 
{ 
    lngHome = "tr_detail" 
} 
+0

<%#lngHome%>也将努力控制中,如果lngHome是公共 – 2011-03-22 09:54:27

+1

@蒂姆 - 好吧。谢谢。将更新答案。 – 2011-03-22 10:02:42

+0

非常感谢你的工作..... – bulent 2011-03-22 10:27:32

0

是的,你可以,lngHome应该是类的公共全球领域,例如:

public partial class WebForm1 : System.Web.UI.Page 
{ 
    public string lngHome = "someDefaultValue"; 
    ...