c#应用程序异常对字符串无效

本文关键字:字符串 无效 异常 应用程序 | 更新日期: 2023-09-27 18:06:10

我是c#的新手,我正试图在控制台应用程序中编写一个非常基本的scraper,但是我得到了错误:

Cannot implicitly convert type void to string

我在下面的代码中要做的是将返回的输入设置为变量并将该变量返回给我的Main方法。以便Main方法可以访问和读取返回值,以便在需要时显示。

private static string setTargetModule()
{
    string targetUrl = Console.Write("Target: http://");
    return targetUrl;
}

c#应用程序异常对字符串无效

问题Console.Write("Target: http://")没有返回任何东西,因为它是void

要解决这个问题,您需要将文本输出到屏幕上,然后显式地读取它。因此,您的代码将变成:

private static string setTargetModule()
{
    Console.Write("Target: http://");
    string targetUrl = Console.ReadLine();
    return targetUrl;
}

或稍短:

private static string setTargetModule()
{
    Console.Write("Target: http://");
    return Console.ReadLine();
}

Console.Write("Target: http://")不返回任何内容,它只是写入Console。那是void。不能将void分配给string

用三行代替两行:

string targetUrl = "Target: http://";
Console.Write(targetUrl);
return targetUrl;

在写入控制台之前,您需要将字符串"Target: http://"设置为变量,因为console . write()返回类型为void:void Console.Write(string value)

原始代码基本上是这样的:string targetUrl = void;