获得更多存储过程的返回(Linq to SQL)

时间:2009-12-17 20:41:39

标签: linq linq-to-sql

我创建了一个Store Procedure来进行测试以研究它的功能。

我的程序执行两个选择:

实施例:  从NotaFiscal中选择TOP 20 *  选择TOP 20 *来自ProdutoNotaFiscal

使用ADO.NET,数据集将填充2个结果并生成2个DataTable。 使用Linq to SQL,返回的类型是ISingleResult

我需要获得我的程序的2个返回,但我无法做到。

如何从程序到LINQ获得2个选择的结果?

1 个答案:

答案 0 :(得分:0)

您需要为datacontext创建一个partial类,然后添加一个包装存储过程结果并将其转换为IMultipleResults的方法。

public partial class EntitiesDataContext
  {
    [Function(Name = "dbo.SPReturnMultipleResult")]
    [ResultType typeof(NotaFiscal)]
    [ResultType typeof(ProductoNotaFiscal)]
    public IMultipleResults SPReturnMultipleResult()
    {
      IExecuteResult result = this.ExecuteMethodCall(this, ((MethodInfo)(MethodInfo.GetCurrentMethod())));
      return ((IMultipleResults)(result.ReturnValue));
    }