Преобразование вложенного for-each для использования LINQ и JOIN ⇐ C#
Преобразование вложенного for-each для использования LINQ и JOIN
У меня есть несколько циклов for-each, которые я пытаюсь преобразовать для использования LINQ, возможно, с JOIN или, возможно, с ZIP Это должно быть возможно. Обратите внимание, что мы используем key из элементов словаря во втором цикле for-each для соединения с элементами из первого Цикл for-each. Я начал писать сам, но так и не смог разобраться. Я тоже опубликовал свою половину попытки.
foreach (элемент var в метаданных) { foreach (IDictionary dic в myDictionary) { имя строки = item.PropName; if (!dic.ContainsKey(name)) продолжить; вар val = dic[имя]; если (string.IsNullOrEmpty(val.ToString())) продолжить; если (val.GetType().IsArray) { if ((из объекта? v в (IEnumerable)val выберите SomePrivateMethodCall(v, item.PropertyType.GetElementType())).Any(result => !result)) { badData.Add(имя); } } еще { if(!SomePrivateMethodCall(val, item.PropertyType)) badData.Add(имя); } } } и я начал писать вот так, но не совсем понял, как действовать:
из элемента в метаданных где !string.IsNullOrEmpty(item.PropName) присоединиться к dic в моем словаре в item.PropName равно dic.Select(d => d.Key.ToString())
У меня есть несколько циклов for-each, которые я пытаюсь преобразовать для использования LINQ, возможно, с JOIN или, возможно, с ZIP Это должно быть возможно. Обратите внимание, что мы используем key из элементов словаря во втором цикле for-each для соединения с элементами из первого Цикл for-each. Я начал писать сам, но так и не смог разобраться. Я тоже опубликовал свою половину попытки.
foreach (элемент var в метаданных) { foreach (IDictionary dic в myDictionary) { имя строки = item.PropName; if (!dic.ContainsKey(name)) продолжить; вар val = dic[имя]; если (string.IsNullOrEmpty(val.ToString())) продолжить; если (val.GetType().IsArray) { if ((из объекта? v в (IEnumerable)val выберите SomePrivateMethodCall(v, item.PropertyType.GetElementType())).Any(result => !result)) { badData.Add(имя); } } еще { if(!SomePrivateMethodCall(val, item.PropertyType)) badData.Add(имя); } } } и я начал писать вот так, но не совсем понял, как действовать:
из элемента в метаданных где !string.IsNullOrEmpty(item.PropName) присоединиться к dic в моем словаре в item.PropName равно dic.Select(d => d.Key.ToString())
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение