问题描述
kriteriji是List<Kriteriji>
的类型var doc = kriteriji.Where(k => k.Ean == txtEan.Text && k.PredmetObravnave == acPredmetObravnave.Text && k.Tse == txtTse.Text && k.DejanskaKolicina == Convert.ToInt32(txtKolicina.Text) && k.KratekNazEnoteMere == acKNEnotaMere.Text && k.OznakaLokacije == acOznakaLokacije.Text && k.OznakaZapore == txtZapora.Text && k.SarzaDob == txtSarzaDobavitelja.Text && k.Sarza == txtSarza.Text && k.DatumVelOd == datumOd && k.DatumVelDo == datumDo).FirstOrDefault();
现在,当我得到doc时,我怎么知道List<kriteriji>中的哪个位置?我现在需要在第一个,第二,...
推荐答案
使用 IndexOf 方法:> p>
kriteriji.IndexOf(doc);
其他推荐答案
您可以使用超载进行选择,该索引和Kriteriji.
这是文档.
然后,您可以选择具有索引属性和DOC属性的匿名对象.如果您使用索引,这将在您已经拥有该数据时在整个列表中引起另一个搜索.
其他推荐答案
我认为您可以首先创建一个(索引,值)keyValuepaire对象,然后像
一样检验它var doc = kriteriji.Select((value, index) => new { index, value }) .Where(k => k.value.Ean == txtEan.Text && k.value.PredmetObravnave == acPredmetObravnave.Text && k.value.Tse == txtTse.Text && k.value.DejanskaKolicina == Convert.ToInt32(txtKolicina.Text) && k.value.KratekNazEnoteMere == acKNEnotaMere.Text && k.value.OznakaLokacije == acOznakaLokacije.Text && k.value.OznakaZapore == txtZapora.Text && k.value.SarzaDob == txtSarzaDobavitelja.Text && k.value.Sarza == txtSarza.Text && k.value.DatumVelOd == datumOd && k.value.DatumVelDo == datumDo).FirstOrDefault();
然后您可以得到
的索引Console.WriteLine(doc.index);
问题描述
kriteriji is type of List<Kriteriji>
var doc = kriteriji.Where(k => k.Ean == txtEan.Text && k.PredmetObravnave == acPredmetObravnave.Text && k.Tse == txtTse.Text && k.DejanskaKolicina == Convert.ToInt32(txtKolicina.Text) && k.KratekNazEnoteMere == acKNEnotaMere.Text && k.OznakaLokacije == acOznakaLokacije.Text && k.OznakaZapore == txtZapora.Text && k.SarzaDob == txtSarzaDobavitelja.Text && k.Sarza == txtSarza.Text && k.DatumVelOd == datumOd && k.DatumVelDo == datumDo).FirstOrDefault();
Now when I get doc how can I know in which position in List<kriteriji> is? I need to now if is in first, second,...
推荐答案
Use the IndexOf method:
kriteriji.IndexOf(doc);
其他推荐答案
You can use an overload for select that will take an index and a Kriteriji.
Here is the documentation.
Then you could select an anonymous object with an Index property and a Doc property. If you would use IndexOf this will cause another search throughout the list while you already have that data.
其他推荐答案
I think you could create a (index , value) keyvaluepaire object at first and then retrive it like
var doc = kriteriji.Select((value, index) => new { index, value }) .Where(k => k.value.Ean == txtEan.Text && k.value.PredmetObravnave == acPredmetObravnave.Text && k.value.Tse == txtTse.Text && k.value.DejanskaKolicina == Convert.ToInt32(txtKolicina.Text) && k.value.KratekNazEnoteMere == acKNEnotaMere.Text && k.value.OznakaLokacije == acOznakaLokacije.Text && k.value.OznakaZapore == txtZapora.Text && k.value.SarzaDob == txtSarzaDobavitelja.Text && k.value.Sarza == txtSarza.Text && k.value.DatumVelOd == datumOd && k.value.DatumVelDo == datumDo).FirstOrDefault();
then you could get the index like
Console.WriteLine(doc.index);