本文整理汇总了C#中IGrouping.Sum方法的典型用法代码示例。如果您正苦于以下问题:C# IGrouping.Sum方法的具体用法?C# IGrouping.Sum怎么用?C# IGrouping.Sum使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IGrouping
的用法示例。
在下文中一共展示了IGrouping.Sum方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: GetChartElement
private SeriesDateBasedElement GetChartElement(IGrouping<DateTime, Purchase> g)
{
var seriesElement = new SeriesDateBasedElement{ Argument = g.Key };
switch (chartValueType)
{
case ChartValueType.TotalCost:
var list = g.ToList();
seriesElement.Value = g.Sum(purchase => purchase.TotalCost);
break;
case ChartValueType.ItemCost:
list = g.ToList();
seriesElement.Value = g.Average(purchase => purchase.ItemCost);
break;
case ChartValueType.Number:
list = g.ToList();
seriesElement.Value = g.Sum(purchase => purchase.ItemsNumber);
break;
}
return seriesElement;
}
示例2: Format
public string Format(IGrouping<string, PrintableDataRow> group, Func<PrintableDataRow, decimal> func)
{
var value = group.Sum(func);
if (value >= 1000) {
return "\"" + value.ToString("#,##0.##") + "\"";
}
else {
return value.ToString("#,##0.##");
}
}
示例3: writeRowH
//.........这里部分代码省略.........
//---------------------------------------------
// Codice fiscale
sb.Append(getCampoNonPosizionale("AU001001", fornitore.GetCodiceFiscale(), AllineamentoCaratteri.Sinistro));
// Cognome o denominazione
if (fornitore.PersonaRiferimento.TipoPersona == Gipasoft.Sfera.Enums.TipoPersonaEnum.Giuridica)
sb.Append(getCampoNonPosizionale("AU001002", Gipasoft.Library.Conversione.ToCBI(fornitore.PersonaRiferimento.RagioneSociale), AllineamentoCaratteri.Sinistro));
else
{
// Cognome
sb.Append(getCampoNonPosizionale("AU001002", Gipasoft.Library.Conversione.ToCBI(fornitore.PersonaRiferimento.Cognome), AllineamentoCaratteri.Sinistro));
// Nome
sb.Append(getCampoNonPosizionale("AU001003", Gipasoft.Library.Conversione.ToCBI(fornitore.PersonaRiferimento.Nome), AllineamentoCaratteri.Sinistro));
// Sesso
if (fornitore.PersonaRiferimento.TipoPersona == Gipasoft.Sfera.Enums.TipoPersonaEnum.Fisica)
{
if(fornitore.PersonaRiferimento.Sesso != Gipasoft.Sfera.Enums.SessoEnum.Undefined)
sb.Append(getCampoNonPosizionale("AU001004", fornitore.PersonaRiferimento.Sesso.ToString().Substring(0, 1).ToUpper(), AllineamentoCaratteri.Sinistro));
// Data di nascita
sb.Append(getCampoNonPosizionale("AU001005", convertData(fornitore.PersonaRiferimento.DataNascita), AllineamentoCaratteri.Destro));
// Comune di nascita
sb.Append(getCampoNonPosizionale("AU001006", Gipasoft.Library.Conversione.ToCBI(fornitore.PersonaRiferimento.ComuneNascita.Descrizione), AllineamentoCaratteri.Sinistro));
// Provincia di nascita
if (int.Parse(fornitore.PersonaRiferimento.ComuneNascita.Codice) <= 999201)
sb.Append(getCampoNonPosizionale("AU001007", fornitore.PersonaRiferimento.ComuneNascita.ProvinciaAppartenenza.Codice, AllineamentoCaratteri.Sinistro));
else
sb.Append(getCampoNonPosizionale("AU001007", "EE", AllineamentoCaratteri.Sinistro));
}
}
// Comune di residenza
sb.Append(getCampoNonPosizionale("AU001008", Gipasoft.Library.Conversione.ToCBI(fornitore.PersonaRiferimento.IndirizzoResidenza.Comune.Descrizione), AllineamentoCaratteri.Sinistro));
// Provincia di residenza
sb.Append(getCampoNonPosizionale("AU001009", fornitore.PersonaRiferimento.IndirizzoResidenza.Comune.ProvinciaAppartenenza.Codice, AllineamentoCaratteri.Sinistro));
// Via e numero civico
sb.Append(getCampoNonPosizionale("AU001011", Gipasoft.Library.Conversione.ToCBI(fornitore.PersonaRiferimento.IndirizzoResidenza.GetIndirizzoCompleto()), AllineamentoCaratteri.Sinistro));
//---------------------------------------------
// Dati relativi alle somme erogate
//---------------------------------------------
IList<Spesa> speseSoggette = _spesaService.GetSoggetteRitenutaByFornitoreCondominioAnno(fornitore, condominio, anno);
decimal imponibileIva = speseSoggette.Sum(item => item.Imponibile);
decimal imponibileRitenuta = speseSoggette.Sum(item => item.GetImponibileRitenuta());
decimal altreSommeNonSoggette = Math.Truncate(imponibileIva - imponibileRitenuta);
// Causale
string causale = "W";
if (fornitore.CodiceTributo == "1040")
causale = "A";
sb.Append(getCampoNonPosizionale("AU001018", causale, AllineamentoCaratteri.Sinistro));
// Ammontare Lordo Corrisposto (al netto di IVA)
sb.Append(getCampoNonPosizionale("AU001021", Math.Truncate(imponibileIva).ToString(), AllineamentoCaratteri.Destro));
// Altre somme non soggette a ritenuta
if(altreSommeNonSoggette > 0)
sb.Append(getCampoNonPosizionale("AU001023", altreSommeNonSoggette.ToString(), AllineamentoCaratteri.Destro));
// Imponibile
sb.Append(getCampoNonPosizionale("AU001024", Math.Truncate(imponibileIva - altreSommeNonSoggette).ToString(), AllineamentoCaratteri.Destro));
// Ritenute a titolo di acconto
sb.Append(getCampoNonPosizionale("AU001025", Math.Truncate(ritenute.Sum(item => item.Importo.GetValueOrDefault())).ToString(), AllineamentoCaratteri.Destro));
//======================================================
// CAMPI POSIZIONALI (da carattere 1890 a carattere 1900)
//======================================================
int charToEnd = 1889 - sb.ToString().Length;
sb.Append(string.Empty.PadRight(charToEnd));
// filler
sb.Append(string.Empty.PadLeft(8));
//---------------------------------------------
// Ultimi caratteri di controllo
//---------------------------------------------
sb.Append("A");
// CarriageReturn LineFeed
sb.Append(CRLF);
sw.Write(sb.ToString());
}
catch (Exception ex)
{
log4net.MDC.Set("user", Gipasoft.Security.Login.Instance.CurrentLogin().LoginName);
_log.Fatal("Errore inaspettato durante la creazione della sezione B per il modelle 770 -" + Gipasoft.Library.Utility.GetMethodDescription() + " - condominio:" + condominio.ID + " - fornitore:" + fornitore.ID, ex);
throw ex;
}
}
示例4: SummaryRow
public SummaryRow(IGrouping<string, PrintableDataRow> specific)
{
this.specific = specific;
GrossPremium = specific.Sum(s => s.GrossPremiumNumber);
}
示例5: CalculateAlbumPlayCount
static int CalculateAlbumPlayCount(IGrouping<string, Track> gt)
{
return gt.Sum(g => g.PlayCount ?? 0);
}
示例6: ShowItemOnRow
private void ShowItemOnRow(DataGridViewRow row, IGrouping<string, DeviceReadLog> g)
{
row.Tag = g;
string[] temp = g.Key.Split(',');
row.Cells["colReadDate"].Value = temp[1];
row.Cells["colDevice"].Value = temp.Length >= 3 ? g.First().DeviceName : null; //表示按设备来统计
row.Cells["colDeviceType"].Value = temp[0];
row.Cells["colAmount"].Value = g.Sum(it => it.Amount);
}
示例7: CreateRecordFromGrouping
private static VerizonRecord CreateRecordFromGrouping(IGrouping<string, VerizonRecord> g)
{
return new VerizonRecord
{
Date = g.OrderBy(r => r.Date).Last().Date,
Description = g.First().Description,
Minutes = g.Sum(r => r.Minutes),
Number = g.Key
};
}