목록을 사전으로 변환

Masoud

다음과 같은 수업이 있습니다.

public class Header
{
    public int Id { get; set; } 
    ....
}
public class Item
{
   public int Id { get; set; } 
   public int HeaderId { get; set; } //FK
   public int ItemSequence  { get; set; }
   public string Value { get; set; } 
   ...
}

HeaderItem일대 다 관계가 (각각 Header많은있다Items

다음이 있습니다 Items.

{{Id=1, HeaderId=1, ItemSequence  =1, Value="A"},
 {Id=2, HeaderId=1, ItemSequence  =2, Value="B"},
 {Id=3, HeaderId=2, ItemSequence  =1, Value="C"},
 {Id=4, HeaderId=2, ItemSequence  =2, Value="D"},
 {Id=5, HeaderId=2, ItemSequence  =3, Value="B"}}

사전을 찾기위한 쿼리를 작성하고 싶습니다. 키는 ItemSequence각각 첫 번째 Header( ItemSequence= 1)이고 값은 다른 ItemSequence값입니다. 즉, 다음과 같은 결과를 얻고 싶습니다.

 Key: {HeaderId=1, ItemSequence  =1} , Values : {"A","B"}
 Key: {HeaderId=2, ItemSequence  =1} , Values : {"C","D","B"}

다음 쿼리를 작성했습니다.

var result = ctx.Headers
                .SelectMany(x => x.Items
                                  .Select(t => new { t.Id,t.ItemSequence,t.HeaderId}))
                                  .?

대신 어떤 코드를 사용해야 ?합니까?

데이브 쿠 시노

다음과 같은 것 :

var result =
   ctx
   .Headers
   .ToDictionary(          
      header => new {
         header.Id,
         header.Items.First().ItemSequence
      },
      header =>
         header
         .Items
         .Select(item => item.Value)
         .ToList()
   );

그러나 모든 헤더에 적어도 하나의 항목이 있다고 가정합니다.

그것에 대해 생각하면 첫 번째 주문 을 원할 수 있습니다 ItemSequence.이 경우 다음과 같은 것을 사용하십시오.

header.Items.OrderBy(item => item.ItemSequence).First().ItemSequence

항목이없는 헤더를 무시하려면 다음을 사용하십시오.

ctx
.Headers
.Where(header => header.Items.Any())
...

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

사전 값을 목록으로 변환

분류에서Dev

목록을 사전으로 변환

분류에서Dev

사전을 목록으로 변환-Python

분류에서Dev

목록 목록을 사전 목록으로 변환

분류에서Dev

목록의 사전을 사전 목록으로 변환

분류에서Dev

목록의 사전을 사전 목록으로 변환

분류에서Dev

목록 목록을 사용자 지정 사전으로 변환

분류에서Dev

목록 목록을 사용자 지정 사전으로 변환

분류에서Dev

목록 목록을 Json으로 변환 할 수있는 사전으로 변환

분류에서Dev

목록의 목록을 사전으로 변환

분류에서Dev

목록 목록을 사전으로 변환

분류에서Dev

목록 목록을 사전으로 변환

분류에서Dev

파이썬 목록 목록을 사전 형식으로 변환

분류에서Dev

값을 목록으로 사용하여 두 목록을 사전으로 변환

분류에서Dev

사전 목록을 새 사전으로 변환

분류에서Dev

JS : 사전을 사전 목록으로 변환

분류에서Dev

사전 목록의 사전을 Pandas DataFrame으로 변환

분류에서Dev

목록을 Python에서 사전 사전으로 변환

분류에서Dev

단일 키 사전 목록을 단일 사전으로 변환

분류에서Dev

Javascript를 사용하여 사전 목록을 목록 사전으로 변환

분류에서Dev

사전의 목록을 목록의 사전으로 변환하는 방법 (Python)

분류에서Dev

매개 변수 사전을 키 목록으로 변환

분류에서Dev

탭 접두사 문자열 목록을 사전으로 변환

분류에서Dev

경로 목록을 Python에서 사전으로 변환

분류에서Dev

사전을 키별로 정렬 된 값 목록으로 변환

분류에서Dev

Python에서 사전 목록을 사전 사전으로 변환하는 방법

분류에서Dev

LINQ를 사용하여이 목록 목록을 사전으로 변환

분류에서Dev

목록을 사전으로 변경

분류에서Dev

두 목록을 사전으로 어떻게 변환합니까?

Related 관련 기사

  1. 1

    사전 값을 목록으로 변환

  2. 2

    목록을 사전으로 변환

  3. 3

    사전을 목록으로 변환-Python

  4. 4

    목록 목록을 사전 목록으로 변환

  5. 5

    목록의 사전을 사전 목록으로 변환

  6. 6

    목록의 사전을 사전 목록으로 변환

  7. 7

    목록 목록을 사용자 지정 사전으로 변환

  8. 8

    목록 목록을 사용자 지정 사전으로 변환

  9. 9

    목록 목록을 Json으로 변환 할 수있는 사전으로 변환

  10. 10

    목록의 목록을 사전으로 변환

  11. 11

    목록 목록을 사전으로 변환

  12. 12

    목록 목록을 사전으로 변환

  13. 13

    파이썬 목록 목록을 사전 형식으로 변환

  14. 14

    값을 목록으로 사용하여 두 목록을 사전으로 변환

  15. 15

    사전 목록을 새 사전으로 변환

  16. 16

    JS : 사전을 사전 목록으로 변환

  17. 17

    사전 목록의 사전을 Pandas DataFrame으로 변환

  18. 18

    목록을 Python에서 사전 사전으로 변환

  19. 19

    단일 키 사전 목록을 단일 사전으로 변환

  20. 20

    Javascript를 사용하여 사전 목록을 목록 사전으로 변환

  21. 21

    사전의 목록을 목록의 사전으로 변환하는 방법 (Python)

  22. 22

    매개 변수 사전을 키 목록으로 변환

  23. 23

    탭 접두사 문자열 목록을 사전으로 변환

  24. 24

    경로 목록을 Python에서 사전으로 변환

  25. 25

    사전을 키별로 정렬 된 값 목록으로 변환

  26. 26

    Python에서 사전 목록을 사전 사전으로 변환하는 방법

  27. 27

    LINQ를 사용하여이 목록 목록을 사전으로 변환

  28. 28

    목록을 사전으로 변경

  29. 29

    두 목록을 사전으로 어떻게 변환합니까?

뜨겁다태그

보관