Nun, ich sendet dieses einen neuen Ansatz versuchen und tun will:Linq eine Liste in einem Modal und den Wert
Modell Gleichgewicht
public class Balance
{
public Balance()
{
Expenses = new List<Expenses>();
Earning = new List<Earnings>();
value = 0;
}
public int BalanceId { get; set; }
public virtual List<Expense> Expenses { get; set; }
public virtual List<Earning> Earnings { get; set; }
public string ApplicationUserId { get; set; }
public decimal value { get; set; }
}
ich dieses Modell, und ich wollte weiß, ob es möglich ist, eine Abfrage in Linq zu machen, um alle Werte aus der Liste der Ausgaben und Einnahmen zu addieren, und wie kann ich das tun, brauche ich diesen Ansatz in meinem Programm jetzt, mache ich die Schleifen in der Ansicht so :
Controller
public PartialViewResult _ObtemSaldo()
{
var userId = User.Identity.GetUserId();
var balance = db.Balance.Where(d => d.ApplicationUserId == userId).FirstOrDefault();
return PartialView(balance);
}
Ansicht
@model MSDiary.Models.Balance
@helper getBalance()
{
decimal balance = 0;
int id = Model.BalanceId;
if (Model != null)
{
foreach (var item in Model.Despesas)
{
balance-= item.ExpenseValue;
}
foreach (var item in Model.Rendimentos)
{
balance += item.EarningValue;
}
Model.value = balance;
if(balance < 0)
{
ViewBag.color = "red";
<p style="color:red">@saldo</p>
}
else
{
ViewBag.color = "green";
<p style="color:green">@saldo</p>
}
}
}
<h3>Actual balance: <span>@getBalance()</span></h3>
Ich möchte wissen, ob ich versuche, denke auch das Konzept zu ändern, und wie kann ich die Linq-Abfrage tun, um zu bekommen, was ich brauche
Ps: Entschuldigung für mein schlechtes Englisch
In der Steuerung, balance .value = balance.Earnings.Sum (x => x.EarningValue) - balance.Expenses.Sum (x => x.ExpenseValue); ' –