リストのインスタンスを格納するリストがあります。私は、全体のシーケンスを削除してもらう「149」リスト内のリストを削除する
List<Product> productList = new List<Product>()
{
new Product()
{
Id = 1,
Model = "Phone",
TypeProd = new CheckTypes() { ChTypes = new List<CHType> { new CHType() { Id = 8, IdName = "261"}, new CHType() {Id = 9 , IdName = "149" } } }
},
new Product()
{
Id = 1,
Model = "Printer",
TypeProd = new CheckTypes() { ChTypes = new List<CHType> { new CHType() { Id = 8, IdName = null}, new CHType() {Id = 8 , IdName = "261" } } }
}
};
var pr = productList.Select(s => s.TypeProd).Where(w => w.ChTypes.Any(a => a.IdName != null && a.IdName.Contains("149"))).ToList();
// I
var pr0 = pr.Select(s => s.ChTypes).Where(w => w.Any(a => a.Id == 9)).ToList();
// II
var pr1 = pr.Select(s => s.ChTypes).Except(pr0);
// III
pr.Select(s=>s.ChTypes).ToList().RemoveAll(a => a.Any(item => item.IdName.Contains("149")));
foreach (var item in pr)
{
foreach (var item2 in item.ChTypes)
{
Console.WriteLine(item2.IdName);
}
Console.WriteLine("End");
}
Console.ReadKey();
== IdNameでサブリストからオブジェクトを削除したいのですが、どのようにシーケンスから一つの要素を削除するには?
を行う
LINQ
悪い方法ですどうもありがとうございましたが、すべての関心はLINQです。サイクルを使って、これは簡単です – Tibomso@Tibomsoなぜあなたは入れ子リストから要素を取り除くために 'LINQ'を使う必要があるのか説明できますか? 'LINQ'は通常、情報を抽出する(SQLで考えることを考える)ために使用され、それらを変更することはありません。 – Vikhram