基本问题:如何在另一个方法中调用静态方法。请帮忙!!
public static class Class1
{
public static string RenderCompareStatus()
{
bool isFound = Class1.Found(id);
}
private static bool Found(string id)
{
}
//错误消息:不包含Found
的定义答案 0 :(得分:5)
我将您的示例扩展为一个完整的示例:
using System;
public static class Class1
{
public static void Main()
{
Console.WriteLine(RenderCompareStatus());
}
public static string RenderCompareStatus()
{
String id = "test";
bool isFound = Found(id);
return "Test: " + isFound;
}
private static bool Found(string id)
{
return false;
}
}
结果:
Test: False
编辑:如果以上示例与您的代码类似,但您的代码无效,请edit your question,提供更多详细信息,例如您获得的准确错误以及生成的代码的更完整示例错误。
编辑:已将public static bool Found(string id)
更改为private static bool Found(string id)
重新编译,但仍然有效。
答案 1 :(得分:3)
您使用班级名称
例如Class1.Found
答案 2 :(得分:2)
代码看起来没问题 - 如果这是您的实际代码,而不仅仅是一个最小的示例,您需要在id
范围内指定RenderCompareStatus
(或其他一些变量)作为参数传递到Found
。
答案 3 :(得分:0)
你的两个方法都缺少一个return语句。如果没有为非void方法指定返回值,则会出现编译错误。
可以使用Class1.Found(id)调用静态方法。但是如果你从同一个类中调用它,你可以省略“Class1”。在通话之前。