从这段代码开始:
class objeto
{
public string codprod {get; set;}
public int idprod {get; set;}
public int idinvoice {get; set;}
}
List<objeto> lista = new List<objeto>();
lista.Add(new objeto() {codprod = "a", idprod = 1, idinvoice = 1});
lista.Add(new objeto() {codprod = "a", idprod = 1, idinvoice = 2});
lista.Add(new objeto() {codprod = "a", idprod = 1, idinvoice = 3});
lista.Add(new objeto() {codprod = "b", idprod = 2, idinvoice = 1});
lista.Add(new objeto() {codprod = "c", idprod = 3, idinvoice = 1});
List<int> listaIDprod = new List<int>();
listaIDprod.Add(1);
listaIDprod.Add(2);
我需要在“list”中只保留“idinvoice = 1”的对象,并且idprod包含在idprod列表中。
由于
答案 0 :(得分:1)
你需要做
var result = lista.Where(foo => foo.idinvoice == 1 &&
listaIDprod.Contains(foo.idprod)).ToList();
在穿上SO之前,请查看您的代码。 class objeto()
应为class objeto
。
另外,请为您的课程和对象选择合理的名称。