由于' {方法}'返回void,返回关键字后面不能跟一个对象表达式

时间:2013-05-08 21:39:04

标签: c# methods .net-4.0 compiler-errors return

在定义XML文件的位置后调用方法时,我试图从XML文件返回一个简单的字符串。但是,当我尝试返回时,它表示“自从'CareerDescription()'返回void,返回关键字后面不能跟一个对象表达式”。单词return以红色突出显示,这就是消息。编译器会说“方法必须有一个返回类型”。我确实有返回类型,但它不想返回...这是代码:

    public CareerDescription(string CareerFile)
    {
        XmlDocument xmlDoc = new XmlDocument();
        xmlDoc.Load(CareerFile);
        string Description = xmlDoc.SelectSingleNode("Careers/CareerList/CareerDescription").InnerText;
        return Description;
    }

我也试过这个,看看我创建的方法是否有问题,但是我得到了同样的错误信息....

    public TestMethod()
    {
        string test = "test";
        if (test == "test")
        {
            return test;
        }
    }

这也给出了同样的信息......

    public TestMethod()
    {
        string test = "test";
        return test;
    }

在创建方法时我做错了什么?我不能为我的生活搞清楚......

1 个答案:

答案 0 :(得分:8)

添加返回类型

       V----V
public string CareerDescription(string CareerFile)
{
    XmlDocument xmlDoc = new XmlDocument();
    xmlDoc.Load(CareerFile);
    string Description = xmlDoc.SelectSingleNode("Careers/CareerList/CareerDescription").InnerText;
    return Description;
}

一个方法必须有一个返回类型,所以我很好奇是什么告诉你这个:

  

“由于'CareerDescription()'返回void,因此返回关键字后面不能跟一个对象表达式”。

当省略返回类型时,因为TRUE错误不是return,而是返回类型的LACK。

例如,这不合法:

public DoNothing()
{
    return;
}