IndexOf возвращает -1 в объекте foreach в списке - PullRequest
0 голосов
/ 12 июля 2020

Когда я запускаю код, он возвращает -1, хотя объект (в моем понимании) должен присутствовать, поскольку он создается оператором foreach. Есть у кого-нибудь идеи?

public partial class Class1
{
    private List<Master_Menu_Item> Config
    {
        get { return JsonConvert.DeserializeObject<List<Master_Menu_Item>>(Json_string.Config); } //if you need an example json, i can provide it
    }

    private void Reload_Master_stack()
    {
        if (Config != null)
        {
            foreach (Master_Menu_Item master_Menu_Item in Config)
            {
                int index = Config.IndexOf(master_Menu_Item);
                Debug.WriteLine(index);
            }
        }
    }
}

class Master_Menu_Item
   {
       public string Name { get; set; }
        public string Icon_path { get; set; }
       public List<Bottom_Menu_Item> Bottom_Menu_Items { get; set; }
   }

1 Ответ

0 голосов
/ 12 июля 2020

Вы можете использовать следующий код:

 if (Config != null)
            {
                foreach (Master_Menu_Item master_Menu_Item in Config)
                {
                    int index = Config.FindIndex(a => a.Id == Master_Menu_Item.Id );
                }
            }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...