Цель:
Получить предыдущую запись в текущий список для расчета с использованием linq < /p>
Результат: < /p>
Date | EatenFoodInKg | CompareToFoodFromYesterday
2000-01-11 10 9 (10-1)
2000-01-10 1 -5 (1-6)
2000-01-09 6 4 (6-2)
2000-01-05 2 -2 (2-4)
2000-01-03 4 1 (4-3)
2000-01-02 3 2 (3-1)
2000-01-01 1
< /code>
Проблема:
может ли это сделать это в LINQ? Я попытался, но я потерпел неудачу, нуждается в поддержке SOM < /p>
Информация:
*Это не работает, чтобы объединить два одинаковых списка в одиночку, потому что это те же данные, может быть, другое решение? < /P>
код: < /p>
public class Person
{
public string LastName { get; set; }
public string FirstName { get; set; }
public int EatenFoodInKg { get; set; }
public int CompareToFoodFromYesterday { get; set; }
public DateTime Date { get; set; }
}
var list1 = new List()
{
new Person()
{
LastName = "Charlotte",
FirstName = "SS",
EatenFoodInKg = 10,
Date = new DateTime(2000, 01, 11)
},
new Person()
{
LastName = "Charlotte",
FirstName = "SS",
EatenFoodInKg = 1,
Date = new DateTime(2000, 01, 10)
},
new Person()
{
LastName = "Charlotte",
FirstName = "SS",
EatenFoodInKg = 6,
Date = new DateTime(2000, 01, 09)
},
new Person()
{
LastName = "Charlotte",
FirstName = "SS",
EatenFoodInKg = 2,
Date = new DateTime(2000, 01, 06)
},
new Person()
{
LastName = "Charlotte",
FirstName = "SS",
EatenFoodInKg = 2,
Date = new DateTime(2000, 01, 05)
},
new Person()
{
LastName = "Charlotte",
FirstName = "SS",
EatenFoodInKg = 4,
Date = new DateTime(2000, 01, 03)
},
new Person()
{
LastName = "Charlotte",
FirstName = "SS",
EatenFoodInKg = 3,
Date = new DateTime(2000, 01, 02)
},
new Person()
{
LastName = "Charlotte",
FirstName = "SS",
EatenFoodInKg = 1,
Date = new DateTime(2000, 01, 01)
}
};
Подробнее здесь: https://stackoverflow.com/questions/797 ... alculation