C#在ToString()方法上引发错误

时间:2018-09-21 20:38:11

标签: c#

我一直在尝试解决ToString方法上的此错误,但不知道出了什么问题。说“返回类型必须是字符串”

public override void ToString()
 {
        return ("{0,-20}  {1,-15}  {2,-10} {3,-10}  {4,-10}", this.name, this.number, String.Format("{0:c}", this.rate), String.Format("{0:00}", this.hours), String.Format("{0:00}", this.gross));
 }

1 个答案:

答案 0 :(得分:3)

您将返回类型指定为方法签名的一部分。该方法当前设置为void(这意味着它不返回值),您应该将其更改为string

public override string ToString()

此外,您似乎正在使用格式字符串,但是缺少string.Format方法调用,该调用类似于:

return string.Format("{0,-20}  {1,-15}  {2,-10} {3,-10}  {4,-10}",
    this.name,
    this.number,
    string.Format("{0:c}", this.rate),
    string.Format("{0:00}", this.hours),
    string.Format("{0:00}", this.gross));