Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linq子列表问题_Linq - Fatal编程技术网

Linq子列表问题

Linq子列表问题,linq,Linq,我对Linq非常陌生,在将以下内容转换为Linq表达式时遇到困难: Dim returnedInstructions As List(Of Integer) = New List(Of Integer) For Each j As Job In response.Jobs For Each i As Instruction In j.Instructions returnedInstructions.Add(

我对Linq非常陌生,在将以下内容转换为Linq表达式时遇到困难:

        Dim returnedInstructions As List(Of Integer) = New List(Of Integer)
        For Each j As Job In response.Jobs
            For Each i As Instruction In j.Instructions
                returnedInstructions.Add(i.InstructionId)
            Next
        Next 

谢谢你的帮助

我对VB不太熟悉,如果这与C#语法有点混淆,我深表歉意


像这样的方法应该会奏效:

    Dim returnedInstructions As New List(Of Integer)
    Dim q = From j In response.Jobs, i In j.Instructions Select i.InstructionID
    returnedInstructions.AddRange(q)
你想要的


我以前尝试过这个确切的示例,但它返回IEnumberable和not IEnumberable。您确定这正是您所尝试的吗?double from应该转化为对SelectMany的调用(根据David的回答),ToList将以列表而不是IEnumerableThanks的形式返回,您的示例非常有效。我将更深入地了解SelectMany。
    Dim returnedInstructions As New List(Of Integer)
    Dim q = From j In response.Jobs, i In j.Instructions Select i.InstructionID
    returnedInstructions.AddRange(q)
List<int> returnedInstructions = response.Jobs
  .SelectMany(j => j.Instructions
    .Select(i => i.InstructionID))
  .ToList();
Dim returnedInstructions = response.Jobs _
  .SelectMany( Function(j) j.Instructions _
    .Select( Function(i) i.InstructionID) ) _
  .ToList()