public partial class _Default : System.Web.UI.Page 
{
  public  static    string a = "";
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            a = "ccc";
        }
    }
    protected void Button1_Click(object sender, EventArgs e)
    {
        a = "pppdfdf";
    }
}
static  的确可以保留,这样好吗?public partial class _Default : System.Web.UI.Page 
{
  public  static  static  string a = "";
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            a = "ccc";
        }
    }
    protected void Button1_Click(object sender, EventArgs e)
    {
        a = "pppdfdf";
    }
}

解决方案 »

  1.   

    不好,少用static静态的东西,可能在现在不会有什么问题,但是在网络端容易出现很多问题。还是老实的new对象吧。能尽量少用就少用,除非有特殊的用法。
      

  2.   

    ASP.NET保存状态的机制很多(Session、Cookie、Profile、Cache、ViewState),没有那本书推荐用静态变量的
      

  3.   

    ...
    web 开发中 尽量不要使用 静态变量你想保留住变量的值,可以存储在viewstate 中但要求变量必须是可序列化的
      

  4.   

    public  string a ;
            public string A
            {
                get { 
    if(a==null)
      return "";
    else 
      return a;
     }
                set { a = value; }
            }