【发布时间】:2014-11-14 03:39:27
【问题描述】:
我在 SQL Server 2012 数据库的单个表中有 2 列 GetProviders 和 GetAwaitingPatients。
-
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;
}
我遇到了一个错误
无法将表达式类型“system.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;
}
我遇到了一个错误
无法将表达式类型“system.Collection.generic.List”转换为返回类型“System.Tuple []
本列数据示例:
10,10556, Steven
35,21456, Sandy
77,21456, John
如何返回正确的返回类型并正确执行?我尝试使用 list 作为列表返回,但这似乎对我不起作用。非常感谢任何见解或帮助。
【问题讨论】:
-
您可以更改您的返回类型或构建您似乎期望的元组。错误信息非常简单,为什么在调用
ToList()时会期待元组? -
我想看看是否可以将其转换为 List,但没有成功
-
你可以试试这个链接,看起来类似于你的问题stackoverflow.com/questions/18664186/… List
> tuples = subjectList.Select(x => new Tuple (x , false)).ToList(); -
真正的解决方案是以真实的关系方式存储数据 - 不要将多个值存储到单个表格单元格中!如果您有五个元组 - 它们应该是 五行 在单独的表中!
-
为什么属性 GetAwaitingPatients 的名字像一个方法?我正要发布一个答案,您根本没有调用此方法。
标签: c# sql-server linq