我很确定这很容易。我只是想从另一个空格中返回一个字符串。
public static void LinkWorker(string baseURLString)
{
// do some stuff here
HTMLWork(baseURLStringCycle)
--> this is where i need xstring returned
foreach(string xyString in xstring.split('\n'))
{
}
}
public static void HTMLWork(string baseURLStringCycle)
{
//do HTML work here
// create x string
string xString = ; //the result of the htmlwork
}
答案 0 :(得分:7)
您不需要void
方法,您希望方法返回类型string
。
public static string HTMLWork(string baseURLStringCycle)
{
//...
return xString;
}
答案 1 :(得分:4)
无法在void方法中返回值,因为它是一个void方法。有两种方法可以达到相同的效果。
答案 2 :(得分:3)
您无法从void函数返回字符串。
public static void LinkWorker(string baseURLString)
{
// do some stuff here
string xstring=HTMLWork(baseURLStringCycle)
foreach(string xyString in xstring.split('\n'))
{
}
public static string HTMLWork(string baseURLStringCycle) //use string instead of void
{
//do HTML work here
// create x string
string xString = ; //the result of the htmlwork
return xString;
}
答案 3 :(得分:2)
如果要使用Void方法,则应使用Out关键字或传入Reference。
e.g。
public static void HTMLWork(string baseUrlStringCyle, out XResult)
{
string xString = "result";
}
答案 4 :(得分:1)
为什么不返回字符串而不是void?
答案 5 :(得分:1)
Anthony's Answer是您最好的选择。
也可以使用'out'参数指定字符串的值。但是当它可以直接从方法
返回时,不应该使用它例如:
public static void HTMLWork(string baseURLStringCycle, out returnString)
{
returnString = "returned string";
}
答案 6 :(得分:0)
最简单,但显然不是最好的方法是将xString设为global
变量。
除此之外,除非您可以选择更改HTMLWork方法,否则我将无法使用。
答案 7 :(得分:0)
您不希望更改函数签名并保持此void,您可以使用string作为参数并在HTMLWork函数中更改它。 C#传递对象作为参考,所以诀窍就完成了。