【问题标题】:How to return DataSet in EntityFramework 4如何在 EntityFramework 4 中返回 DataSet
【发布时间】:2021-06-16 23:27:26
【问题描述】:
我有这个方法返回 obj Data,但我需要返回 DataSet
public static Data GetData(int id)
{
var result = new Data();
using (var context = new MyContext(false, false))
{
var query = context.Data.Include("MyTable1").Include("MyTable2").Include("MyTable3").Where(o => o.Id == id);
result = query.OrderBy(onc => onc.Data).FirstOrDefault();
}
return result;
}
我是实体框架的新手,任何示例如何返回 DataSet 而不是对象。
【问题讨论】:
标签:
c#
asp.net
entity-framework
entity-framework-4
【解决方案1】:
将您的 Data 对象添加到数据集中并返回它。
这是一个例子,
private DataSet ConvertToDataSet(Data yourObject)
{
DataTable dt = new DataTable();
//build the columns by your fields
dt.Columns.Add("Id", typeof(int));
dt.Columns.Add("Name", typeof(string));
DataRow row = dt.NewRow();
row["Id"] = yourObject.Id;
row["Name"] = yourObject.Name
dt.Rows.Add(row);
DataSet ds = new DataSet();
ds.Tables.Add(dt);
return ds;
}
public static DataSet GetData(int id)
{
var result = new Data();
using (var context = new MyContext(false, false))
{
var query = context.Data.Include("MyTable1").Include("MyTable2").Include("MyTable3").Where(o => o.Id == id);
result = query.OrderBy(onc => onc.Data).FirstOrDefault();
}
return ConvertToDataSet(result);
}