非常,我想在if函数返回的程序中使用变量'username',但是此程序位于我的program.cs中,而if函数则不在。
无法在if函数中获取公共静态字符串,这也许对有经验的编码人员来说很明显,但是我是一个初学者。
我通过让控制台打印变量值进行了测试,但没有成功。
if函数:
public class WeeWoo : ChatBot
{
public static Dictionary<string, string> whitelisted;
static WeeWoo()
{
string json = File.ReadAllText("whitelists/walls.json");
var data = JsonConvert.DeserializeObject<dynamic>(json);
whitelisted = data.ToObject<Dictionary<string, string>>();
}
public override void GetTextAsync(string text)
{
string message = "";
string username = "";
text = GetVerbatim(text);
if (text.Contains("-> me"))
{
text = text.Replace("[", String.Empty).Replace("]", String.Empty).Replace(" -> me", String.Empty);
String[] args = text.Split(' ');
username = args[1];
message = args[2];
if (message.Equals("weewoo") && (whitelisted.ContainsKey(username)))
{
Program.WeeWoo();
}
}
}
public static string username;