Ich stehe vor einem seltsamen Problem, ich habe nicht viel mit C# programmiert und erst vor kurzem angefangen, also entschuldige ich mich im Voraus, wenn die Frage tatsächlich nur ein Anfängerfehler ist.Warum gibt meine LINQ-Abfrage immer 0 zurück?
int i = 0;
var index = from x in (
from v in Category.Items
select new { Key = i++, Value = v })
where ((MenuCategory) x.Value).id == menuItems[items.SelectedIndex].category
select x.Key;
Ich versuche, den Index eines bestimmten Objekts in Category.Items[]
(wo das Feld ID ist ein spezifischer Wert, menuItems[items.SelectedIndex].category
)
ist es, weil der Index der Spalte 0 ist? Denken Sie daran, alles beginnt bei 0 – WhatsThePoint
Richtig, aber wenn etwas anderes im Code nicht falsch ist, sollte der Index 1 für den Wert sein, den ich es mit – user1494162
testen Wenn Sie den Index benötigen, können Sie Methodensyntax verwenden und es gibt eine Überladung von 'Select 'Das wird den Index im Lambda enthalten. https://msdn.microsoft.com/en-us/library/bb534869(v=vs.110).aspx – juharr