ISingleResult如何转为DataTable???
我在做一个gridview用户控件,为了通用性,我用了一个datatable类型的属性,外部可设置该属性,然后gridview从中读取,作为它的datasource,代码如下:
public DataTable gvDataSource
{
get
{
if (ViewState["gvDataSource"] == null)
return null;
else
return (DataTable)ViewState["gvDataSource"];
}
set
{
ViewState["gvDataSource"] = value;
}
}
public void gvDataBind()
{
gvNewsList.DataSource = gvDataSource;
gvNewsList.DataBind();
}
在外部调用程序中是下面的代码
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
IEnumerable <DataRow> dataSource = (IEnumerable <DataRow>)((new NewsDA()).getAllNews());
NewsList.gvDataSource = dataSource.CopyToDataTable <DataRow>();
NewsList.gvDataBind();
}
}
getallnews是使用存储过程和linq实体返回的结果集,但运行时总提示无法转换
无法将类型为“SingleResult`1[DAL.getAllNewsResult]”的对象强制转换为类型“System.Collections.Generic.IEnumerable`1[System.Data.DataRow]”。
求各位老大帮忙!