如何从 SQL Server 2012 数据库表返回元组

本文关键字:数据库 返回 元组 2012 Server SQL | 更新日期: 2023-09-27 18:30:23

我在SQL Server 2012数据库的单个表中GetProvidersGetAwaitingPatients了2列。

  • GetProviders是存储为Tuple<long, string>数组的元素
  • GetAwaitingPatients将其元素存储为数组Tuple<long, long, string>

我尝试通过这两种方法使用 C# 和 Linq 简单地读取和返回此单个表中每个列的数据。

public Tuple<long, string>[] GetProviders(Guid sessionId)
{
    var objproviders = (from objProvider in db.Licenses
                        where objProvider.GUID == Convert.ToString(sessionId)
                        select objProvider.GetProviders).ToList();
    return objproviders;
}

我收到错误

无法转换表达式类型"系统。Collection.generic.List"以返回类型"System.Tuple [ ]

此列中的数据示例:

   10556, Memorial
   21456, Dallas
   38678, Chicago

这是第二种方法:

 public Tuple<long, long, string>[] GetAwaitingPatients(Guid sessionId)
 {
     var objGetAwaiting = (from objGetAwaitingPatient in db.Licenses
                           where objGetAwaitingPatient.GUID == Convert.ToString(sessionId)
                           select objGetAwaitingPatient.GetAwaitingPatients).ToList();
     return objGetAwaiting;
}

我收到错误

无法转换表达式类型"系统。Collection.generic.List"以返回类型"System.Tuple [ ]

此列中的数据示例:

   10,10556, Steven
   35,21456, Sandy
   77,21456, John

如何返回正确的返回类型并正确返回?我尝试使用列表作为列表返回,但这似乎对我不起作用。任何见解或帮助都非常感谢。

如何从 SQL Server 2012 数据库表返回元组

您是否尝试过简单地调用ToArray()扩展方法而不是ToList().
这应该可以解决问题。