Dictionary<string, string> propertyCompany = new Dictionary<string, string>();//gloabal variable
protected void Page_Load(object sender, EventArgs e)
{
if(!isPostBack){
propertyCompany .add("a","1");
propertyCompany .add("b","2");
propertyCompany .add("c","3");
}
}
protected void btnGetProperty_Click(object sender, EventArgs e)
{
string a=propertyCompany["a"];//error this key is not exist
//propertyCompany is null
}
当定义
propertyCompany
并填写form_load
时。点击按钮中的propertyCompany
为空!是吗?我使用
static
但有时我不理解错误为空。 最佳答案
每个请求都会创建新的页面对象,因此不能在第一个请求中创建的第二个请求(bnt click)字典中使用(加载时不回发)
删除回发测试以快速修复。
其他修复位置:
*将字典存储在viewstate中。