C# ode>是看起来最接近的一个(或第一个关节)。任何此类错误信息的问题在于,当你被要求做不可能的事情时,猜测你想要的东西永远不会是100%完美的,这正是被要求做不可能的事情的本质。@JonHanna-谢谢你的全面解释。顺便说一句,我从没想过编译器会猜测:-D
C# ode>是看起来最接近的一个(或第一个关节)。任何此类错误信息的问题在于,当你被要求做不可能的事情时,猜测你想要的东西永远不会是100%完美的,这正是被要求做不可能的事情的本质。@JonHanna-谢谢你的全面解释。顺便说一句,我从没想过编译器会猜测:-D,c#,sql-server,linq,C#,Sql Server,Linq,ode>是看起来最接近的一个(或第一个关节)。任何此类错误信息的问题在于,当你被要求做不可能的事情时,猜测你想要的东西永远不会是100%完美的,这正是被要求做不可能的事情的本质。@JonHanna-谢谢你的全面解释。顺便说一句,我从没想过编译器会猜测:-DIt几乎是尽可能地猜测。编译正确的代码有时很难,为不正确的代码生成正确的错误消息总是很难:)完整的错误消息非常切题'IQueryable'不包含'Union'的定义。是完全正确的,这将是编译器查找但未能找到的第一件事。然后它会寻找一个扩展方法,
ode>是看起来最接近的一个(或第一个关节)。任何此类错误信息的问题在于,当你被要求做不可能的事情时,猜测你想要的东西永远不会是100%完美的,这正是被要求做不可能的事情的本质。@JonHanna-谢谢你的全面解释。顺便说一句,我从没想过编译器会猜测:-DIt几乎是尽可能地猜测。编译正确的代码有时很难,为不正确的代码生成正确的错误消息总是很难:)完整的错误消息非常切题<代码>'IQueryable'不包含'Union'的定义。是完全正确的,这将是编译器查找但未能找到的第一件事。然后它会寻找一个扩展方法,但由于类型不匹配而找不到一个适用的扩展方法。最近的一次发现并不伟大,但这是一次尝试报告尝试和失败的公平尝试。@JonHanna-但这与“ParallelQuery类型的接收者”有什么关系呢?老实说,我不理解完整的错误消息。因为您要求编译器找到一个匹配的
.Union()
,其中没有匹配的.Union()
,而期望使用并行查询的是看起来最接近的一个(或首先是一个关节)。任何此类错误信息的问题在于,当你被要求做不可能的事情时,猜测你想要的东西永远不会是100%完美的,这正是被要求做不可能的事情的本质。@JonHanna-谢谢你的全面解释。顺便说一句,我从没想过编译器会猜测:-DIt几乎是尽可能地猜测。编译正确的代码有时很困难,为不正确的代码生成正确的错误消息总是很困难:)
SELECT 'Territories' as [Table], TerritoryDescription as Item, RegionID as ID
FROM Northwind.dbo.Territories
UNION
SELECT 'MedicalArticles' as [Table], Topic as Item, ID as ID
FROM Nutshell.dbo.MedicalArticles
UNION
SELECT 'Authors' as [Table], City as Item, Zip as ID
FROM pubs.dbo.Authors
void Main()
{
// In LinqPad:
// Drag + Drop databases from Schema explorer to code window with pressed Ctrl key
var dc = this; // database context: Northwind + Nutshell + pubs
// first database Northwind is default
var q1 = (from s in dc.Territories select new { Table = "Territories",
Item = s.TerritoryDescription, ID = s.RegionID }).Distinct().Take(5);
// second database .Nutshell needs to be referenced
var q2 = (from s in dc.Nutshell.MedicalArticles select new { Table="MedicalArticles",
Item = s.Topic, ID=s.ID }).Distinct().Take(5);
// third database .Pubs needs to be referenced
var q3 = (from s in dc.Pubs.Authors select new { Table = "Authors",
Item = s.City, ID = s.Zip }).Distinct().Take(5);
// union q1 with q2 works
var u1 = q1.Union(q2.Select(s => s)); u1.Dump();
// but union u1 with q3 does not work
//var u2 = u1.Union(q3.Select(s => s)); u2.Dump();
}