다른 사전 키 / 값 일치에 대해 중첩 된 개체 사전을 쿼리하는 방법

ttaylor27272727

개체 내에있는 사전을 쿼리하고 전달 된 사전을 기반으로 특정 레코드를 가져와야합니다.

이 있다는 것을 알고 .ContainsKey()있지만 키 / 값이 서로 일치하는지 확인해야합니다.

나는 그것이 필요하다고 생각 KeyValuePair하지만 Dictionary <string, string>을 KeyValuePair로 변환하는 방법.

이를 수행하는 가장 좋은 방법은 무엇입니까? 아니면 가능할까요?

암호:

    public class MyFiles
    {
        public int Id { get; set; }
        public string FileName { get; set; }

        public IDictionary<string, string> Metadata { get; set; } = new Dictionary<string, string>();
    }
        private void button1_Click(object sender, EventArgs e)
        {
            var list = new List<MyFiles>();

            list.Add(new MyFiles
            {
                Id = 1,
                FileName = "myTestfile.jpg",
                Metadata = new Dictionary<string, string>
                {
                    { "FileSize", "599" },
                    { "GroupId", "25" },
                    { "TypeId", "Finance" },

                }
            });

            list.Add(new MyFiles
            {
                Id = 2,
                FileName = "myTestfile1.jpg",
                Metadata = new Dictionary<string, string>
                {
                    { "FileSize", "748" },
                    { "GroupId", "25" },
                    { "TypeId", "HR" },

                }
            });

            list.Add(new MyFiles
            {
                Id = 3,
                FileName = "myTestfile2.jpg",
                Metadata = new Dictionary<string, string>
                {
                    { "FileSize", "78" },
                    { "GroupId", "78" },
                    { "TypeId", "IT" },

                }
            });

            list.Add(new MyFiles
            {
                Id = 4,
                FileName = "myTestfile2.jpg",
                Metadata = new Dictionary<string, string>
                {
                    { "FileSize", "783" },
                    { "GroupId", "78" },
                    { "TypeId", "IT" },

                }
            });


            // Instance one ===========================================
            var queryDictionary = new Dictionary<string, string>();

            queryDictionary.Add("GroupId", "78");
            queryDictionary.Add("TypeId", "IT");

            // Expected results would be Ids: 3 and 4

            // Instance two ===========================================
            queryDictionary.Clear();

            queryDictionary.Add("GroupId", "78");
            queryDictionary.Add("FileSize", "783");

            // Expected results would be Ids: 4

        }
Charlieface

모든 키 / 값 쌍을 반복 queryDictionary하고 목록의 각 항목에 대해 일치시켜야합니다.

var results = list.Where(
    mf => queryDictionary.All(
        kvp => mf.Metadata.TryGetValue(kvp.Key, out var metdata) && metadata == kvp.Value
    )
);

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

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

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

중첩 된 사전에서 특정 키 값이 일치 할 때 여러 키 값을 인쇄하는 방법

분류에서Dev

CosmosDB에서 중첩 된 개체 값을 쿼리하는 방법

분류에서Dev

중첩 된 개체의 값간에 전환하는 방법

분류에서Dev

(더보기) 중첩 된 사전 이해 : 내부 값을 키로 전환하는 방법?

분류에서Dev

중첩 된 사전 (Python)에 값을 저장하는 키 오류 방지

분류에서Dev

서로 다른 키를 사용하여 중첩 된 개체의 값에서 공용체 만들기

분류에서Dev

중첩 된 사전에 대해 가장 높은 값을 가진 키 2 개 확보

분류에서Dev

linq를 사용하여 사전에서 중첩 된 키 값 쌍을 얻는 방법

분류에서Dev

python-키 값을 동일한 사전의 다른 키에 해당하는 값으로 대체

분류에서Dev

키 쌍이 동일 할 때 하나의 중첩 된 사전에서 다른 중첩 된 사전으로 값 복사

분류에서Dev

사전의 중첩 된 값을 상위 수준 키로 변경하는 방법

분류에서Dev

중첩 된 개체에서 일치하는 키 값 쌍에 대한 경로

분류에서Dev

키가 같지만 값이 다른 사전을 가진 두 개의 중첩 된 사전 결합

분류에서Dev

기본값을 사용하여 객체에 중첩 된 사전

분류에서Dev

중첩 된 사전에서 값을 추출하기 위해 Mongo 쿼리를 작성해야합니다.

분류에서Dev

목록에 래핑 된 중첩 된 사전에서 일치하는 사전 키, 값 검색

분류에서Dev

Python : 중첩 된 사전 : 문자열 (키 + 값)을 값으로 가져온 다음 키로 교체, 사전 결합

분류에서Dev

중첩 된 사전에 대해서만 키를 반환하는 방법은 무엇입니까?

분류에서Dev

중첩 된 SQL 쿼리에서 최대 값을 찾은 다음 동일한 쿼리에서 해당 최대 값을 다시 사용하는 것이 좋은 방법입니까?

분류에서Dev

다른 광고에 대한 특정 값을 변경하는 중첩 된 사전 문제

분류에서Dev

키-값 쌍으로 사용하여 (동일한 길이 및 동일한 키) 두 개의 다른 사전 값에서 새 사전을 만드는 방법

분류에서Dev

대상 키와 값을 포함하는 중첩 된 사전을 재귀 적으로 찾습니다.

분류에서Dev

중첩 된 사전의 각 키에 반대 수의 값 추가

분류에서Dev

중첩 된 키로 중첩 된 사전을 정렬하는 방법

분류에서Dev

동일하지만 다르게 생성 된 중첩 사전의 키에 값을 할당하면 다른 결과가 나오는 이유는 무엇입니까?

분류에서Dev

사전 내에 중첩 된 사전 값에 액세스하는 방법

분류에서Dev

새 키를 만들고 중첩 된 사전에있는 기존 키의 값을 할당합니다.

분류에서Dev

2 개의 중첩 된 사전의 값을 병합하고 합하고 존재하지 않는 키 : 값 쌍을 유지하는 방법

분류에서Dev

키 일치에 대한 값에 대해 파이썬 사전을 분할하는 방법

Related 관련 기사

  1. 1

    중첩 된 사전에서 특정 키 값이 일치 할 때 여러 키 값을 인쇄하는 방법

  2. 2

    CosmosDB에서 중첩 된 개체 값을 쿼리하는 방법

  3. 3

    중첩 된 개체의 값간에 전환하는 방법

  4. 4

    (더보기) 중첩 된 사전 이해 : 내부 값을 키로 전환하는 방법?

  5. 5

    중첩 된 사전 (Python)에 값을 저장하는 키 오류 방지

  6. 6

    서로 다른 키를 사용하여 중첩 된 개체의 값에서 공용체 만들기

  7. 7

    중첩 된 사전에 대해 가장 높은 값을 가진 키 2 개 확보

  8. 8

    linq를 사용하여 사전에서 중첩 된 키 값 쌍을 얻는 방법

  9. 9

    python-키 값을 동일한 사전의 다른 키에 해당하는 값으로 대체

  10. 10

    키 쌍이 동일 할 때 하나의 중첩 된 사전에서 다른 중첩 된 사전으로 값 복사

  11. 11

    사전의 중첩 된 값을 상위 수준 키로 변경하는 방법

  12. 12

    중첩 된 개체에서 일치하는 키 값 쌍에 대한 경로

  13. 13

    키가 같지만 값이 다른 사전을 가진 두 개의 중첩 된 사전 결합

  14. 14

    기본값을 사용하여 객체에 중첩 된 사전

  15. 15

    중첩 된 사전에서 값을 추출하기 위해 Mongo 쿼리를 작성해야합니다.

  16. 16

    목록에 래핑 된 중첩 된 사전에서 일치하는 사전 키, 값 검색

  17. 17

    Python : 중첩 된 사전 : 문자열 (키 + 값)을 값으로 가져온 다음 키로 교체, 사전 결합

  18. 18

    중첩 된 사전에 대해서만 키를 반환하는 방법은 무엇입니까?

  19. 19

    중첩 된 SQL 쿼리에서 최대 값을 찾은 다음 동일한 쿼리에서 해당 최대 값을 다시 사용하는 것이 좋은 방법입니까?

  20. 20

    다른 광고에 대한 특정 값을 변경하는 중첩 된 사전 문제

  21. 21

    키-값 쌍으로 사용하여 (동일한 길이 및 동일한 키) 두 개의 다른 사전 값에서 새 사전을 만드는 방법

  22. 22

    대상 키와 값을 포함하는 중첩 된 사전을 재귀 적으로 찾습니다.

  23. 23

    중첩 된 사전의 각 키에 반대 수의 값 추가

  24. 24

    중첩 된 키로 중첩 된 사전을 정렬하는 방법

  25. 25

    동일하지만 다르게 생성 된 중첩 사전의 키에 값을 할당하면 다른 결과가 나오는 이유는 무엇입니까?

  26. 26

    사전 내에 중첩 된 사전 값에 액세스하는 방법

  27. 27

    새 키를 만들고 중첩 된 사전에있는 기존 키의 값을 할당합니다.

  28. 28

    2 개의 중첩 된 사전의 값을 병합하고 합하고 존재하지 않는 키 : 값 쌍을 유지하는 방법

  29. 29

    키 일치에 대한 값에 대해 파이썬 사전을 분할하는 방법

뜨겁다태그

보관