选择 LINQ 中 JOIN 后的所有列

2024-03-05

我有两张桌子,Table1 and Table2。我想执行左外连接:

var myOutput = from object1 in Table1
               join object2 in Table2
               on object1.Property1 equals object2.Property2 into Table3
               from output in Table3.DefaultIfEmpty()
               select new
                   {
                       object1.Property1,
                       object1.Property2,
                       //...
                       output.Property3,
                       output.Property4,
                       //...
                   };

正如您所注意到的,我想从结果表中选择两个对象的所有属性(连接时考虑的枚举包含某些类型的对象 - 这对于两种关系来说是不同的)。当然,我可以在匿名选择中选择属性,如示例所示。

我的问题是如何避免手动指定所有属性?我想要有类似的东西SELECT * FROM TABLE3, where TABLE3是一个结果关系(加入后TABLE1 and TABLE2).

预先感谢您的线索。


如果您想投影为扁平类型,则必须手动指定每个类型。您的另一个选择是让您的组合类型包含两个对象,并且这些对象自然会带来它们的属性。

select new 
{
    Object1 = object1,
    Object2 = output
};

你会像这样使用它myObj.Object1.Property1, myObj.Object2.Property4, etc.

仍涉及一些手动工作的最后一个选项是定义适当的类型并使用构造函数或构建器方法来完成将对象属性分割为扁平类型的工作。您仍然执行手动映射,但将其与查询逻辑隔离。

select new CombinedType(object1, output);
//or 
select builder.GetCombinedType(object1, output);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

选择 LINQ 中 JOIN 后的所有列 的相关文章

  • 如何使用 C# 中的参数将用户重定向到 paypal

    如果我有像下面这样的简单表格 我可以用它来将用户重定向到 PayPal 以完成付款
  • “构建”构建我的项目,“构建解决方案”则不构建

    我刚刚开始使用VS2010 我有一个较大的解决方案 已从 VS2008 成功迁移 我已将一个名为 Test 的控制台应用程序项目添加到解决方案中 选择构建 gt 构建解决方案不编译新项目 选择构建 gt 构建测试确实构建了项目 在失败的情况
  • 以文化中立的方式将字符串拆分为单词

    我提出了下面的方法 旨在将可变长度的文本拆分为单词数组 以进行进一步的全文索引处理 删除停止词 然后进行词干分析 结果似乎不错 但我想听听关于这种实现对于不同语言的文本的可靠性的意见 您会建议使用正则表达式来代替吗 请注意 我选择不使用 S
  • GLKit的GLKMatrix“列专业”如何?

    前提A 当谈论线性存储器中的 列主 矩阵时 列被一个接一个地指定 使得存储器中的前 4 个条目对应于矩阵中的第一列 另一方面 行主 矩阵被理解为依次指定行 以便内存中的前 4 个条目指定矩阵的第一行 A GLKMatrix4看起来像这样 u
  • 为什么两个不同的 Base64 字符串的转换会返回相等的字节数组?

    我想知道为什么从 base64 字符串转换会为不同的字符串返回相同的字节数组 const string s1 dg const string s2 dq byte a1 Convert FromBase64String s1 byte a2
  • 按成员序列化

    我已经实现了template
  • 嵌套接口:将 IDictionary> 转换为 IDictionary>?

    我认为投射一个相当简单IDictionary
  • BitTorrent 追踪器宣布问题

    我花了一点业余时间编写 BitTorrent 客户端 主要是出于好奇 但部分是出于提高我的 C 技能的愿望 我一直在使用理论维基 http wiki theory org BitTorrentSpecification作为我的向导 我已经建
  • 在 Windows 窗体中保存带有 Alpha 通道的单色位图会保存不同(错误)的颜色

    在 C NET 2 0 Windows 窗体 Visual Studio Express 2010 中 我保存由相同颜色组成的图像 Bitmap bitmap new Bitmap width height PixelFormat Form
  • HTTPWebResponse 响应字符串被截断

    应用程序正在与 REST 服务通信 Fiddler 显示作为 Apps 响应传入的完整良好 XML 响应 该应用程序位于法属波利尼西亚 在新西兰也有一个相同的副本 因此主要嫌疑人似乎在编码 但我们已经检查过 但空手而归 查看流读取器的输出字
  • C#中如何移动PictureBox?

    我已经使用此代码来移动图片框pictureBox MouseMove event pictureBox Location new System Drawing Point e Location 但是当我尝试执行时 图片框闪烁并且无法识别确切
  • C++ OpenSSL 导出私钥

    到目前为止 我成功地使用了 SSL 但遇到了令人困惑的障碍 我生成了 RSA 密钥对 之前使用 PEM write bio RSAPrivateKey 来导出它们 然而 手册页声称该格式已经过时 实际上它看起来与通常的 PEM 格式不同 相
  • 转发声明和包含

    在使用库时 无论是我自己的还是外部的 都有很多带有前向声明的类 根据情况 相同的类也包含在内 当我使用某个类时 我需要知道该类使用的某些对象是前向声明的还是 include d 原因是我想知道是否应该包含两个标题还是只包含一个标题 现在我知
  • 如何序列化/反序列化自定义数据集

    我有一个 winforms 应用程序 它使用强类型的自定义数据集来保存数据进行处理 它由数据库中的数据填充 我有一个用户控件 它接受任何自定义数据集并在数据网格中显示内容 这用于测试和调试 为了使控件可重用 我将自定义数据集视为普通的 Sy
  • 垃圾收集器是否在单独的进程中运行?

    垃圾收集器是否在单独的进程中启动 例如 如果我们尝试测量某段代码所花费的进程时间 并且在此期间垃圾收集器开始收集 它会在新进程上启动还是在同一进程中启动 它的工作原理如下吗 Code Process 1 gt Garbage Collect
  • 如何查看网络连接状态是否发生变化?

    我正在编写一个应用程序 用于检查计算机是否连接到某个特定网络 并为我们的用户带来一些魔力 该应用程序将在后台运行并执行检查是否用户请求 托盘中的菜单 我还希望应用程序能够自动检查用户是否从有线更改为无线 或者断开连接并连接到新网络 并执行魔
  • WPF/C# 将自定义对象列表数据绑定到列表框?

    我在将自定义对象列表的数据绑定到ListBox in WPF 这是自定义对象 public class FileItem public string Name get set public string Path get set 这是列表
  • 哪种 C 数据类型可以表示 40 位二进制数?

    我需要表示一个40位的二进制数 应该使用哪种 C 数据类型来处理这个问题 如果您使用的是 C99 或 C11 兼容编译器 则使用int least64 t以获得最大的兼容性 或者 如果您想要无符号类型 uint least64 t 这些都定
  • 如何将服务器服务连接到 Dynamics Online

    我正在修改内部管理应用程序以连接到我们的在线托管 Dynamics 2016 实例 根据一些在线教程 我一直在使用OrganizationServiceProxy out of Microsoft Xrm Sdk Client来自 SDK
  • C++ 中类级 new 删除运算符的线程安全

    我在我的一门课程中重新实现了新 删除运算符 现在我正在使我的代码成为多线程 并想了解这些运算符是否也需要线程安全 我在某处读到 Visual Studio 中默认的 new delete 运算符是线程安全的 但这对于我的类的自定义 new

随机推荐

  • java.lang.IllegalArgumentException:如果指定的 JWT 是数字签名的,则必须指定签名密钥

    我正在寻求实施JWT在我的申请中 我正在通过参考以下内容进行一些研发 https stormpath com blog jwt java create verify https stormpath com blog jwt java cre
  • 使用自定义 http.ResponseWriter 根据代理请求的响应写入 cookie?

    我原来的问题here https stackoverflow com questions 58776775 how can i set a cookie based on response header with reverse proxy
  • 使用 Java 将十六进制转储的字符串表示形式转换为字节数组?

    我正在寻找一种将表示十六进制值的长字符串 来自转储 转换为字节数组的方法 我无法比发帖者更好地表达它同样的问题在这里 http www experts exchange com Programming Programming Languag
  • 使用方法初始化常量变量 (C#)

    是否可以使用另一个类的方法初始化常量值 namespace ConsoleApplication1 class Program const int gravit haha habc something like this static vo
  • 弹性盒/网格布局中的最后一个边距/填充折叠

    我有一个项目列表 我正在尝试使用 Flexbox 将其排列成可滚动的水平布局 容器中的每个项目都有左右边距 但最后一个项目的右边距正在折叠 有没有办法阻止这种情况发生 或者有一个好的解决方法 ul list style type none
  • Laravel 中使用 return 重定向到外部 URL

    我正在尝试使用 SMS INDIA HUB API 向用户发送一次性密码 为此 我需要重定向到 URL 格式 如果我们加载这个 URL 它将返回一些消息 我需要把这条消息传达给 我试过这样 url http cloud smsindiahu
  • 当我在分析模式下运行我的应用程序时,它停止响应

    我的 Android 应用程序在长时间运行的会话中遇到一些 OutOfMemory 错误 为了找到原因 我尝试使用 Android Studio Profiler 但它停止工作并在使用后 10 秒内冻结应用程序 这是 Android Stu
  • 如何在 URL 中传递 Javascript 变量?阿贾克斯

    我试图在我使用的 url 中传递 accesstoken 和 pageid 的值 有什么想法如何正确地做到这一点吗
  • 文档中哪里说 while 测试 readdir 的定义?

    也可以看看 readdir 的 0 结果在 while 条件下如何不为 false https stackoverflow com questions 843430 how is 0 result from readdir not fals
  • VarBinary 到图像 url

    我正在将 Base64 图像转换为byte 并将其存储在varbinarySQL Server 中的列 我想从数据库获取图像并将其设置为 ASP NET 的图像 urlimage 我怎样才能做到这一点 将图像写入数据库的代码 string
  • 在不同行上选择满足不同条件的值

    假设我有一个像这样的两列表格 userid roleid 1 1 1 2 1 3 2 1 我想获得所有不同的用户 IDroleids1 2 AND 3 使用上面的示例 我想要返回的唯一结果是userid1 我该怎么做 好吧 我对此投了反对票
  • 使用 wingrep 搜索 IP 地址

    我正在使用 WinGrep 在 txt 文件中搜索 IP 地址 但我不知道如何让它使用正则表达式进行搜索 有人对这个有经验么 如果您不需要考虑 IPv6 只需要没有端口号的数字 IP 地址 并且不需要验证地址 即不匹配非法地址行321 45
  • Spring MVC 控制器返回 HTML

    我在尝试将 HTML 返回到 Spring MVC 控制器时遇到问题 它看起来像这样 RequestMapping value QUESTION GROUP CREATE URL method RequestMethod POST publ
  • Node.js 上的多个服务器

    我需要在同一个 Nodejs 实例上模拟四个服务器 具有不同的主机和端口 一个例子可以是 域1 8000 域2 8010 域名3 8020 域4 8030 有人可以帮我吗 谢谢 我添加了一个示例 其中包含使用节点的 2 个服务器的可能解决方
  • Java 8 中的多个 null 检查

    我有下面的代码 对于多个空检查来说有点难看 String s null if str1 null s str1 else if str2 null s str2 else if str3 null s str3 else s str4 所以
  • Scala 类型系统的优点

    我正在探索 Scala 语言 我经常听到的一个说法是 Scala 有一个stronger类型系统优于 Java 我认为人们的意思是 scalac拒绝某些有缺陷的程序javac会愉快地编译 只会导致运行时错误 某些不变量可以在 Scala 程
  • Windows批处理文件:多个if条件

    有没有办法说类似的话 if 1 1 or 1 2 在批处理文件中 或者 如果我可以指定一组候选值 例如 if 1 in 1 2 3 4 20 事实证明 and 很简单 只是不是你期望的语法 这3个例子就说明了这一点 换句话说 If 1 1
  • iPhone - UIImageView 中的中心 UIImage

    我有一个 UIImageView 我从 URL 获取 UIImage 图像显示在 UIImageView 中 但我无法使其正确居中 UIImage 为 80 x 68 像素 UIImaveView 的大小为 90 x 90 当我在 UIIm
  • 如何使用来自不同 ViewController 的 JSON 响应填充 UITableView?

    我在 stackoverflow com 上进行了谷歌搜索 但无法摆脱这种情况 如何使用 GET 的响应来填充 TableView 我发送 GET 并在 DetailViewController 我的主控制器 中的方法中解析响应 并希望使用
  • 选择 LINQ 中 JOIN 后的所有列

    我有两张桌子 Table1 and Table2 我想执行左外连接 var myOutput from object1 in Table1 join object2 in Table2 on object1 Property1 equals