0

感谢您阅读本文。

编译时出现此错误:

'ASP.Helpers.Message.DisplayMessage(string, string)':并非所有代码路径都返回值

我在 App_Code\Helpers\Message.cshtml 中有一个助手类,这是迄今为止的内容:

@functions{
 public static string DislayMessage(string x, string y)
  {
    IF ((x == "yes") && (y == "yes"))
     {
       return ("something");
     }
  }
}

在另一个页面中,它被这样调用:

@{Helpers.Message.DisplayMessage("yes", "yes")}

有任何想法吗?

4

2 回答 2

2

如果条件为假,你仍然需要返回一些东西。您可能希望在函数末尾返回 null 或其他内容,以便在所有情况下都返回某些内容。

public static string DislayMessage(string x, string y)
{
    IF ((x == "yes") && (y == "yes"))
    {
        return ("something");
    }

    // fallback case
    return string.Empty;
}
于 2012-05-30T03:47:40.587 回答
1

因为只有当您的 IF 条件为真并且您提到您的函数将返回一个字符串(您的返回类型)时,您的方法才会返回某些内容。您最好添加一些东西以始终返回。

public static string DislayMessage(string x, string y)
{
    If ((x == "yes") && (y == "yes"))
     {
       return "something";
     }
     return "";
 }
于 2012-05-30T03:48:42.080 回答