use*_*662 6 c# linq sql-server stored-procedures
我在SQL Server数据库中有一个存储过程,它返回结果列表.此存储过程在LINQ-to-SQL dbml文件中公开.然后我尝试这样调用这个存储过程:
public List<MyObject> GetObjects()
{
List<MyObject> objects = new List<MyObject>();
using (DatabaseDataContext context = new DatabaseDataContext())
{
objects = context.GetObjectsFromDB(); // This is my problem line
}
return objects;
}
Run Code Online (Sandbox Code Playgroud)
我的问题是,我不知道如何将存储过程的结果转换为List<MyObject>.context.GetObjectsFromDB返回一个System.Data.Linq.ISingleResult<sprocName>.如何将存储过程的结果转换为强预定义类型的列表?
谢谢!
试试这个,
public List<MyObject> GetObjects()
{
using (DatabaseDataContext context = new DatabaseDataContext())
{
var objects = context.GetObjectsFromDB();
return new List<MyObject>(objects);
}
}
Run Code Online (Sandbox Code Playgroud)
更新:通过使用显式转换,可以像这样完成
public List<MyObject> GetObjects()
{
using (DatabaseDataContext context = new DatabaseDataContext())
{
List<MyObject> objects = (List<MyObject>)context.GetObjectsFromDB();
return objects;
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8003 次 |
| 最近记录: |