使用实例引用无法访问成员'string.Format(string,params object [])';用类型名称来限定它

时间:2013-03-31 02:00:13

标签: c# asp.net asp.net-mvc

我有一个显示合同列表的页面。每行包含Amount,Fee和Total,我正在计算该行的行。

我也在尝试计算一个总计,总计来自集合的总计。

这就是我所拥有的:

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(string,params object [])';使用类型名称对其进行限定

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

1 个答案:

答案 0 :(得分:7)

你误解了字符串。

String.Format()静态方法,它采用格式字符串和一组参数。
你可以打电话给

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

但是,如果您只有一个值,则可以使用格式参数调用ToString()

someDecimal.ToString("c")