本文整理汇总了C#中Calculator.CalculateDetail方法的典型用法代码示例。如果您正苦于以下问题:C# Calculator.CalculateDetail方法的具体用法?C# Calculator.CalculateDetail怎么用?C# Calculator.CalculateDetail使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Calculator
的用法示例。
在下文中一共展示了Calculator.CalculateDetail方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: UploadFile
//.........这里部分代码省略.........
context.FinancialDatas = new List<FinancialData>();
foreach (FinancialData data in financialDatas.Where(i => i.ContextID == context.ContextID))
{
context.FinancialDatas.Add(data);
};
}
// ----- UNIT -------
foreach (Unit unit in units)
{
foreach (FinancialData data in financialDatas.Where(i => i.UnitID == unit.UnitId))
{
unit.FinancialDatas.Add(data);
};
}
if (ModelState.IsValid)
{
foreach (Context context in contexts)
{
db.Entry(context).State = EntityState.Modified;
}
foreach (Unit unit in units)
{
db.Entry(unit).State = EntityState.Modified;
}
db.SaveChanges();
}
// Calculate KPIs
Calculator calculator = new Calculator();
ICollection<CalculatedKPI> calculatedKPIs = new List<CalculatedKPI>();
foreach (ContextContainer contextContainer2 in contextContainers)
{
contextContainer2.CalculatedKPIs = new List<CalculatedKPI>();
foreach (FormulaDetail formula in taxonomy.FormulaDetails)
{
decimal result = 0;
List<FinancialData> isFinancialDatas = new List<FinancialData>();
List<FinancialData> bsFinancialDatas = new List<FinancialData>();
if (contextContainer2.Contexts.Where(i => i.Type == ContextType.IncomeStatement).Count() > 0) {
isFinancialDatas = contextContainer2.Contexts.Where(i => i.Type == ContextType.IncomeStatement).Single().FinancialDatas.ToList();
}
if (contextContainer2.Contexts.Where(i => i.Type == ContextType.BalanceSheet).Count() > 0) {
bsFinancialDatas = contextContainer2.Contexts.Where(i => i.Type == ContextType.BalanceSheet).Single().FinancialDatas.ToList();
}
if (calculator.CalculateDetail(isFinancialDatas, bsFinancialDatas, formula.FormulaExpression, ref result))
{
CalculatedKPI calculatedKPI = new CalculatedKPI
{
ContextContainerID = contextContainer2.ContextContainerID,
FormulaDetailID = formula.FormulaDetailID,
Value = result,
ContextContainer = contextContainer2,
FormulaDetail = formula
};
calculatedKPIs.Add(calculatedKPI);
//db.CalculatedKPIs.Add(calculatedKPI);
contextContainer2.CalculatedKPIs.Add(calculatedKPI);
//if (ModelState.IsValid)
//{
// db.CalculatedKPIs.Add(calculatedKPI);
// db.SaveChanges();
//}
}
}
//contextContainer2.CalculatedKPIs = calculatedKPIs;
//if (ModelState.IsValid) {
// db.Entry(contextContainer2).State = EntityState.Modified;
// db.SaveChanges();
//}
}
if (ModelState.IsValid)
{
foreach (CalculatedKPI calculatedKPI in calculatedKPIs)
{
db.CalculatedKPIs.Add(calculatedKPI);
}
foreach (ContextContainer contextContainer2 in contextContainers)
{
db.Entry(contextContainer2).State = EntityState.Modified;
}
db.SaveChanges();
}
}
}
return viewresult;
}
return RedirectToAction("Index");
}