如何 return 中的数据集 EntityFramework 4

How to return DataSet in EntityFramework 4

我有这个方法 returns obj Data,但我需要 return 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;
}

我是 Entity Framework 的新手,任何示例我如何 return DataSet 而不是对象。

将您的 Data 对象添加到数据集中并 return 它。
这是例子,

 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);
  }