Получить дату последнего изменения цены товара - PullRequest
0 голосов
/ 09 октября 2019

У меня есть 3 столбца, Stock, Price и Saved, которые поступают из БД. Мы храним цены ежедневно независимо от изменения цены, и я пытаюсь извлечь последнюю дату, когда цена изменилась.

Что я пробовал:

  • Использование цикла foreach дляитерации по инв и сопоставить цены, но я заблудился где-то вдоль линии.

  • Используя LINQ, я получаю дату последнего обновления базы данных, а не последнее обновление цены.

  • Дублирование списка исравнивая arr [0] с arr2 [1], когда числа не совпадают с датой печати. ​​

Код:

namespace StackOverFlowQ2
{
    class Program
    {
        public class Data
        {
            public List<Inventory> myInv { get; set; }
        }

        public class Inventory
        {
            public string stock { get; set; }
            public string price { get; set; }
            public string saved { get; set; }
        }

        static void Main(string[] args)
        {
            var inv = new List<Inventory>
            {
                new Inventory
                {
                    stock = "Apple",  price = "31", saved = "8/10/2019 12:01:01 AM"
                },
                new Inventory
                {
                    stock = "Apple",  price = "31", saved = "8/9/2019 12:01:01 AM"
                },
                new Inventory
                {
                    stock = "Apple",  price = "31", saved = "8/8/2019 12:01:01 AM"
                },
                new Inventory
                {
                    stock = "Apple",  price = "31", saved = "8/7/2019 12:01:01 AM"
                },
                new Inventory
                {
                    stock = "Apple",  price = "28", saved = "8/6/2019 12:01:01 AM"
                },
                new Inventory
                {
                    stock = "Apple",  price = "28", saved = "8/5/2019 12:01:01 AM"
                },
                new Inventory
                {
                    stock = "Apple", price = "28", saved = "8/4/2019 12:01:01 AM"
                }
            };

            #region Solution
            //Iterate through the List
            for (int i = 0; i < inv.Count - 1; i++)
            {   
                //Compare current index to next index
                if (inv[i].price != inv[i + 1].price)
                {   
                    //Print results                                   
                    Console.WriteLine(inv[i].saved);
                    break;
                }
            }
            #endregion
        }
    }
}

Токовый выход: 8/10/2019 12:01:01 AM

Ожидаемый результат: 8/7/2019 12:01:01 AM

...