我将 ASP.NET 中继器的 DataSource 设置如下:
rptTargets.DataSource = from t in DB.SalesTargets select new { t.Target, t.SalesRep.RepName };
现在,在转发器的 OnDataBound 事件中,如何从 e.Item.DataItem 中包含的匿名类型中检索 RepName 和 Target 属性?
非常感谢
我将 ASP.NET 中继器的 DataSource 设置如下:
rptTargets.DataSource = from t in DB.SalesTargets select new { t.Target, t.SalesRep.RepName };
现在,在转发器的 OnDataBound 事件中,如何从 e.Item.DataItem 中包含的匿名类型中检索 RepName 和 Target 属性?
非常感谢
您可以使用DataBinder.Eval:
string repName = (string)DataBinder.Eval(e.Item.DataItem, "RepName");
string target = (string)DataBinder.Eval(e.Item.DataItem, "Target");
我知道这个问题已经在一年前得到解答,但我刚刚为这个问题找到了一个 .NET 4.0 解决方案。
当您将匿名类型绑定到转发器时,您可以访问 OnDataBound 事件中的属性,如下所示:
dynamic targetInfo = e.Item.DataItem as dynamic;
string repName = targetInfo.RepName;
string target = targetInfo.Target;