değeri göndermek:Linq bir Modal bir liste ve Eh ben yeni bir yaklaşım çalışıyor ve bunu yapmak istiyor am
Modeli Dengesi
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; }
}
ben bu modeli var ve ben istediğim Linq'de tüm değerleri Tahsilat ve Kazançlar listesinden toplamak için bir sorgulama yapılıp yapılamayacağını biliyor ve bunu nasıl yapabilirim, şu anda programımda bu yaklaşıma ihtiyacım var, bu şekilde görünüşte döngüler yapıyorum :
Kontrolör
public PartialViewResult _ObtemSaldo()
{
var userId = User.Identity.GetUserId();
var balance = db.Balance.Where(d => d.ApplicationUserId == userId).FirstOrDefault();
return PartialView(balance);
}
Görünüm
@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>
Ben yaklaşım değiştirmeye çalışmak iyi düşünüyorum olmadığını bilmek istiyorum ve nasıl i gerekenleri almak için linq sorgusu yapabilir
Ps: Üzgünüz için üzgünüm
Denetleyicide, "balance .value = balance.Earnings.Sum (x => x.EarningValue) - balance.Expenses.Sum (x => x.ExpenseValue);" –