さて、MasterTagList と FoundTagList の 2 つのリストがあります。マスター リストは、どのタグを検索するかを事前に設定します。見つかったリストは、リーダーが実際に見つけたタグで構成されています。私がやろうとしているのは、見つかったタグ リストのどこにもなかった MasterTagList 内のアイテムを特定することです。つまり、それらは完全に存在しません。
Except() メソッドを使用しようとしましたが、何らかの理由で、項目が正確な順序になっていない場合、すべての項目がまだ欠落していると表示されます。
次のようなコードも試しました。
List<string> missing = new List<string>();
foreach (string T in MasterTagList)
{
if (!FoundTagList.Contains(T))
{
missing.Add(T);
}
}
欠落している新しいリストには、順序に関係なく、MasterTagList にあるが FoundTagList にはないすべてのアイテムが表示されるはずだと思います。私は決して C# の専門家ではないので、何かを見逃しているかもしれません。
このコードを変更して機能させる方法があるかどうか、または順序に関係なく、欠落している要素を見つける方法が他にあるかどうかを知りたいだけです。
前もって感謝します!
編集:私が言ったように、私はここで提案されている他のすべてのオプションを試しました. 私の Except() インスタンスは次のようになりました。
List<string> missing = MasterTagList.Except(FoundTagList).ToList;
それでも、プログラムを実行すると、欠落しているリストは常に MasterTagList と同じになります。
解決済み: もともとリストに追加していた方法に何か問題があったに違いないことがわかりました。したがって、各リストの要素は必ずしも同一ではありませんでした。戻ってリストに追加する方法を修正したところ、プログラムは完全に機能しています。提案してくださった皆様、ありがとうございました!