c#代码背后的ObjectDataSource?

ObjectDataSource in c# Code Behind?

是否可以读取在代码隐藏中创建的 ObjectDataSource 提供的数据?以下面的例子:

ObjectDataSource myObjectDataSource= new ObjectDataSource();
myObjectDataSource.SelectParameters.Add(new SessionParameter("createdDate", TypeCode.String, "FilterCreated"));

你怎么能从中得到行呢?例如在数据集中你会做这样的事情:

foreach (DataRow dr in myDataset.Tables[0].Rows) {
     string abc = dr["myColumn"];
}

您可以这样尝试,将对象数据源转换为数据集,然后读取

private DataSet ConvertObjectSourceToDataSet(ObjectDataSource ods)
{
   var ds = new DataSet();
   var dv = (DataView)ods.Select();
   if (dv != null && dv.Count > 0)
   {
     var dt = dv.ToTable();
     ds.Tables.Add(dt);
   }
  return ds;
}

代码来源:http://www.aspdotnet-suresh.com/2010/09/how-to-bind-dataset-with.html