2013-03-31 26 views
6

我有一个显示合同列表的页面。每行包含一笔金额,一笔费用和一笔总额,我正在计算该行的该行。成员'string.Format(string,params object [])'不能用实例引用访问;使用类型名称代替其资格

我也试图计算一个总计,总和来自集合。

这是我有:

var contracts = _contractsRepository.Contracts. 
    Select(c => new ContractViewModel 
    { 
     ContractId = c.ContractID,            
     Amount = c.Amount, 
     Fee = c.Fee, 
     Total = c.Sum(cc => cc.Amount) + c.Sum(cc => cc.AdminFee) 
    }); 

// error here 
ViewBag.GrandTotal = contracts.Sum(c => c.Total).ToString().Format("{0:c}"); 

我得到一个编译错误,当我尝试计算总计,上面写着:

会员“的String.format(字符串,params对象[ ])'不能用实例引用访问;用类型名称代替它

任何人都知道我能做些什么来解决这个问题?

回答

7

您误解字符串。

String.Format()是一个静态方法,它采用格式字符串和一组参数。
你可以称之为

String.Format("{0:c}", someDecimal); 

不过,如果你只有一个值,你可以调用ToString()用format参数:

someDecimal.ToString("c") 
相关问题