Error in arithmetic operation using linq

Hi All,
Here just I want to perform the following operation on the given data.

WFactor SPRPrice LTService LCost Total LCost


0.19 171.00 0.50 92 46.00
0.09 120.00 0.80 92 73.60
0.27 85.00 0.40 92 36.80


Eg:

Total LCost = LCost * LTService [ie, 92*.50 =46]

TotalCost = SPRPrice + Total LCost [171 + 46 = 217]

TotalWeightedCost = sum(WFactor * (SRPrice + TotalLCost)) [(.19 * (171 +46)) + (.09 * (120 + 73.60) + (.27 * (85 + 36.80) Ans: 91.53]


This is the code for doing TotalCost, which work fine

lblTotalCost.Text = Resources.COOApplication.Total_Cost + " " + strCurrencyCode + " " + (costs.Sum(lc => lc.LabourCostPerHr * lc.LabourTimePerService).ToCurrencyFormat() + objSCosts.Sum(pc => pc.SPartRetailPricePerService).ToCurrencyFormat());


**For TotalWeightedCost , shows incorrect calculation

lblWeightedTotalCost.Text = Resources.COOApplication.Total_Weighted_Cost + " " + strCurrencyCode + " " + (objSCosts.Sum(pc => pc.SWeightingFactor * pc.SPartRetailPricePerService + costs.(lc => lc.LabourCostPerHr * lc.LabourTimePerService)));
**


Here is my code
try
{
List<Labour> objLabours = new List<Labour>();
Labour objLabour= new Labour();
objLabour.SMInfoId = ActiveScheduledMaintenanceInfo;

objLabours = COOLabourObject.GetAllLabour(objLabour);


string strCurrencyCode = COOCurrencyObject.GetCurrency(COOScheduledMaintenanceObject.GetScheduledMaintenance(ActiveScheduledMaintenanceInfo).CurrencyId).CurrencyCode;

var costs = from lc in objLabours
select new
{
LabourId = lc.LabourId,
LabourCostPerHr = COOLabourCostObject.GetLabourCost( lc.LabourCostId).LaborCostPerHour.ToCurrencyFormat(),
ServiceInterVal = COOIntervalObject.GetInterval(lc.IntervalId).Intervals,
LabourTimePerService =lc.LTimePerService,
Cost = strCurrencyCode + " " + (lc.LTimePerService * COOLabourCostObject.GetLabourCost(lc.LabourCostId).LaborCostPerHour).ToCurrencyFormat()
};

HoverGridList.DataSource = costs.ToList();
HoverGridList.DataBind();

ScheduledCost objScheduledCost = new ScheduledCost();
objScheduledCost.SMInfoId = ActiveScheduledMaintenanceInfo;

List<ScheduledCost> objSCosts = COOScheduledCostObject.GetAllScheduledCost(objScheduledCost);
objSCosts.Sum(pc =>pc.SPartRetailPricePerService).ToCurrencyFormat();
lblTotalCost.Text = Resources.COOApplication.Total_Cost + " " + strCurrencyCode + " " + (costs.Sum(lc => lc.LabourCostPerHr * lc.LabourTimePerService).ToCurrencyFormat() + objSCosts.Sum(pc => pc.SPartRetailPricePerService).ToCurrencyFormat());

lblWeightedTotalCost.Text = Resources.COOApplication.Total_Weighted_Cost + " " + strCurrencyCode + " " + (objSCosts.Sum(pc => pc.SWeightingFactor * pc.SPartRetailPricePerService + costs.(lc => lc.LabourCostPerHr * lc.LabourTimePerService)));

Thank you in advance