Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >LINQ在执行多个连接之前选择表的列

LINQ在执行多个连接之前选择表的列
EN

Stack Overflow用户
提问于 2018-02-28 16:06:08
回答 1查看 113关注 0票数 0

运行下面的查询并在调试时将鼠标悬停在"usersToWork“上之后,我可以查看返回给我的单个条目的所有属性,以及与该值有关系的其他表。我需要向用户显示的是"Lines.Id“值(Lines是表,Id是Lines表中的列),但是这个值在SelectMany()语句中丢失了。有没有办法选择"Lines.Id“值来包含在我从所有连接中获得的最终值中?在下面的代码中,我注释掉了我想要的东西,但是我不能把它放在那里,否则我会在第一个SelectMany语句中得到错误,说'int‘不包含’Shift‘的定义,并且没有扩展方法’Shift‘接受类型为'int’的第一个参数。

如果我错了,请纠正我,但是SelectMany()选择了您想要连接的所有列。在本例中,在第一个SelectMany()中,我仅从“Shift”表中获取值,在第二个SelectMany()中,我仅从"Users“表中获取值。为什么这与SQL连接不同?在连接SQL时,您可以获得每一列,因为您将它们连接在一起,SelectMany()只产生您连接的第二个表的值。是否有可能在"Lines“表中获取该值,或者我是否需要执行另一次查询?任何帮助都是最好的。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
int idEnteredByUser = 123;
var usersToWork = entityDataModel.Lines
                //....NOT IN MY CODE NOW....
                // .Select(line => line.Id)//THIS IS WHAT I NEED.
                // .Select(line => line.Description, line.Id//OR THIS TO RETURN TWO VALUES IF POSSIBLE

                //This is my current code, I need to include on of the select lines above.
                .SelectMany(line => line.Shifts) //Join lines on shifts.
                .Where(shift => shift.EndTime >= DateTime.Now) //Join restricted times.
                .SelectMany(user => user.Users) //Join the restricted shift times on users.
                .Where(user => user.UserId == idEnteredByUser ); //Only look for the specific user
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-02-28 16:29:21

使用LINQ查询语法可以更轻松地实现这一点。

我假设您在发布的代码中犯了一个拼写错误,并且usershift的一个属性。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
var idEnteredByUser = 123;
var usersToWork = 
    from line in entityDataModel.Lines
    from shift in line.Shifts
    where shift.EndTime >= DateTime.Now
    from user in shift.Users
    where user.UserId == idEnteredByUser
    select new
    {
        Description = line.Description,
        Id = line.Id
    };
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49033812

复制
相关文章
如何将多个 kubeconfig 文件合并为一个?
项目通常有多个 k8s 集群环境,dev、testing、staging、prod,kubetcl 在多个环境中切换,操作集群 Pod 等资源对象,前提条件是将这三个环境的配置信息都写到本地机的 $HOME/.kube/config 文件中。
我的小碗汤
2023/03/19
2.4K0
如何将多个 kubeconfig 文件合并为一个?
python根据已有文件名的文件复制文件到新文件夹中
最近需要对一些图片进行整理,需要从一堆图片中将已经存在在文件中的图片移动到另外一个新的文件夹中,所以就特意就写了一个小玩意方便使用.下面是代码实现:
小海怪的互联网
2019/10/14
3.8K0
Java 将两个Map对象合并为一个Map对象
实现方式是通过 putAll() 方法将多个 map 对象中的数据放到另外一个全新的 map 对象中,代码如下所示,展示了两个 map 对象的合并,如果是多个 map 合并也是用这种方式。
程序员十三
2018/12/28
4.6K0
java将字符串存入GridF并通过id或文件名查询
import static org.bson.codecs.configuration.CodecRegistries.fromProviders; import static org.bson.codecs.configuration.CodecRegistries.fromRegistries; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.InputStream; i
HUC思梦
2020/09/03
8650
python两个列表合并为字典,一个作为
两个列表合并为一个字典函数list_dic(list1,list2)可以直接复制拿走
py3study
2020/01/17
2.4K0
Java中如何把两个数组合并为一个
http://freewind.me/blog/20110922/350.html
全栈程序员站长
2022/09/07
1.3K0
pycharm创建第一个程序_python创建新文件
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/174511.html原文链接:https://javaforall.cn
全栈程序员站长
2022/09/27
4930
pycharm创建第一个程序_python创建新文件
如何将文件名称批量导入excel
不给赞赏的话给个赞或者关注下公众号TungHsu吧,不会让你失望的,好玩的数据,免费的软件,学习资料和方法。
用户1315847
2018/07/26
4.7K0
如何将文件名称批量导入excel
Go处理字符串到合法文件名
使用filenamify库 Demo package main import ( "github.com/flytam/filenamify" "fmt" ) func main() { output,err :=filenamify.Filenamify(`<foo/bar>`,filenamify.Options{}) fmt.Println(output,err) // => foo!bar,nil //--- output,err =filenamify.Filen
ACK
2020/02/18
9780
如何删除一个文件名以分号开头的文件
该文讲述了如何删除一个文件名以分号开头的文件。作者通过在Linux上使用VIM编辑器不小心创建了一个文件名以分号开头的文件,尝试使用多种方法删除该文件,包括使用rm命令和转义字符。最后,作者通过在rm命令中添加转义字符成功删除了该文件。
雷大亨
2018/01/01
2.3K0
vscode 设置打开新文件不覆盖前一个窗口
vscode 打开文件时如果会覆盖掉原来窗口中打开的未做修改的文件,非常影响使用体验
Leophen
2020/11/03
6.7K0
vscode 设置打开新文件不覆盖前一个窗口
/var/spool/postfix/maildrop/ 中有大量的文件
今天查看硬盘剩余的容量,发现‘/’目录下占用了大量的空间;可我在这个目录下面没有放什么东西;仔细查看在/var/spool/postfix/maildrop/ 中发现了大量的文件。怎么会有这么多的文件呢,先删除。
双面人
2019/04/10
1.7K0
Python压缩新文件到已有ZIP文件
本文要点在于使用Python标准库zipfile创建压缩文件时,如果使用'a'模式时,可以追加新内容。 from zipfile import ZipFile from os import listdir from os.path import isfile, isdir, join def addFileIntoZipfile(srcDir, fp): #遍历该文件夹中所有文件 for subpath in listdir(srcDir): subpath = join(srcDir,
Python小屋屋主
2018/04/16
1.2K0
Python文件名后缀_python获取目录下所有文件的文件名
使用 os.path.splitext(file)[0] 可获得 文件名 。 使用 os.path.splitext(file)[-1] 可获得以 . 开头的 文件后缀名 。
全栈程序员站长
2022/11/09
4.6K0
当一个文件中有个证书链
公众号是真的好久没更新了,实在抱歉,过年之后到现在终于觉得开始清闲了一下,最近一直在整理在日本时候的照片,主要是最后一个月末赶上了樱花季,得以观赏了樱花盛开的画面,之后跟大家分享一下。
琉璃康康
2022/04/19
5350
两个数组合并成一个数组 请把两个数组 ['A1', 'A2', 'B1', 'B2', 'C1', 'C2', 'D1', 'D2'] 和 ['A', 'B', 'C', 'D'],合并为 ['...
方案1 let arr1 = ['A1', 'A2', 'B1', 'B2', 'C1', 'C2', 'D1', 'D2'] let arr2 = ['A', 'B', 'C', 'D'] arr2 = arr2.map(v => `${v}3`); let arr3=[...arr1, ...arr2].sort().map(v => v.replace('3', '')) console.log(arr3) 方案2 let arr1 = ['A1', 'A2', 'B1', 'B
刘嘿哈
2022/10/25
2K0
算法练习(20) - 将一个交错数据合并为一个一维数组
编程题(20分钟) 将一个交错数据合并为一个一维数组 输入: strJaggedArray[][], 由多个一维数组(长度不定,个数不定)组成的交错数组 输出: strArray[], 由strJaggedArray[r][c]中的元素以"&"为分隔符拼合而成, 是strJaggedArray中数组元素的无重复组合(不考虑顺序)
惊羽-布壳儿
2022/06/15
6140
linux的文件名的长度限制_linux补全文件名
编写本文档,主要目的是为了验证linux下文件数、目录数、文件名长度的各种限制二、文档内容
全栈程序员站长
2022/11/01
5.9K0
Java将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成
By CaesarChang 合作: root121toor@gmail.com ~关注我 带你看更多精品技术和面试必备 示例: 输入:1->2->4, 1->3->4 输出:1->1->2->3->4->4 我们设定一个哨兵节点 prehead 和新链表,让prehead等于新链表,我们维护一个 pre,我们需要做的是调整它的 next 指针。然后,我们重复以下过程,直到 l1 或者 l2 指向了 null :如果 l1 当前节点的值小于等于 l2
CaesarChang张旭
2021/01/26
1.6K0
点击加载更多

相似问题

Python -将csv文件合并为一个共同轴

32

熊猫将表合并为两个共同的列

24

将“”改为“。文件名中有"_“

12

将多个文件合并为一个文件,包括文件名。

40

将新文件名传回jquery

11
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文