我试图将try {}中Button1 click事件中生成的变量值传递给另一个函数(function2)。最有效的方法是什么?会话对象?
private static string createAuthCode()
{
RNGCryptoServiceProvider rng = new RNGCryptoServiceProvider();
byte[] buff = new byte[5];
rng.GetBytes(buff);
return Convert.ToBase64String(buff);
}
protected void Button1_Click(object sender, EventArgs e)
{
//code
//..
try {
...
string authCode = createAuthCode();
}
//code
//..
function2();
}
protected void function2()
{
//I want to access authCode here
}
答案 0 :(得分:4)
为什么不使用Manish Mishra建议的参数?
在Button1_Click中,像这样调用function2
function2(authCode);
将您的function2更改为:
protected void function2(String authCode)
{
//access authCode here
}
答案 1 :(得分:2)
如果不能选择将参数传递给后续方法调用,则应使用HttpContext.Current.Items
。它是一个内存中的对象集合,一旦请求结束就会持续(换句话说,它就是每个请求的存储空间)。