本文整理汇总了C#中Model.List.Last方法的典型用法代码示例。如果您正苦于以下问题:C# List.Last方法的具体用法?C# List.Last怎么用?C# List.Last使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Model.List
的用法示例。
在下文中一共展示了List.Last方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: GetExchangePeriodsMergedByMovementDirectoryFromStartDate
/// <summary>
/// Metoda zwracająca listę okresów notowań połączonych, jeżeli mają ten sam kierunek trendu. Metoda ta rozpoczyna wyznaczanie od parametru periodsStartDate i zmierza ku teraźniejszości.
/// </summary>
/// <param name="DesiredNumberOfPeriods">Oczekiwana liczba okresów.</param>
/// <param name="periodsEndDate">Data będąda granicą wyznaczania kolejnych okresów.</param>
/// <param name="periodsStartDate">Data początku okresów.</param>
/// <param name="daysInterval">Liczba określająca długość okresu w dniach.</param>
/// <returns>Lista okresów notowań połaczonych, jeżeli mają ten sam kierunek trendu.</returns>
public List<ExchangePeriod> GetExchangePeriodsMergedByMovementDirectoryFromStartDate(int DesiredNumberOfPeriods, DateTime periodsEndDate, DateTime periodsStartDate, int daysInterval)
{
DateTime iterationDate = periodsStartDate.Date;
string dataPath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location) + "\\data\\";
List<ExchangePeriod> periodList = new List<ExchangePeriod>();
while (periodList.Count <= DesiredNumberOfPeriods && iterationDate <= periodsEndDate)
{
DateTime periodEnd;
if (iterationDate.AddDays(daysInterval) < periodsEndDate)
{
periodEnd = iterationDate.AddDays(daysInterval);
}
else
{
periodEnd = periodsEndDate.Date;
}
ExchangePeriod period = GetExchangePeriod(iterationDate, periodEnd);
if (period != null)
{
if (periodList.Count != 0)
{
if (period.PeriodStart == periodList.Last().PeriodEnd)
{
period.PublicTrading -= GetExchangeDay(periodList.Last().PeriodEnd).PublicTrading;
}
//If percentage changes have the same sign.
if ((periodList.Last().PercentageChange * period.PercentageChange) >= 0)
{
periodList.Last().PeriodEnd = period.PeriodEnd;
periodList.Last().PublicTrading += period.PublicTrading;
periodList.Last().CloseRate = period.CloseRate;
}
else
{
period.OpenRate = periodList.Last().CloseRate;
periodList.Add(period);
}
}
else
{
period.PublicTrading -= GetExchangeDay(period.PeriodStart).PublicTrading;
periodList.Add(period);
}
}
iterationDate = iterationDate.AddDays(daysInterval);
}
while (periodList.Count > DesiredNumberOfPeriods)
{
periodList.Remove(periodList.Last());
}
return periodList;
}