DataSet ds声名与两个方法同级。
  DataSet ds;
  方法1。
  方法2。

解决方案 »

  1.   

    用安地址传递;
    放在session中;
    注:页面post以后,public的值会丢失。
      

  2.   

    to dragon2002:我是这样声明的啊,可是不行啊
      

  3.   

    那可能这种方法不行,只好用sesion保存或cache保存。DataSet categorySet = (Set)Cache[KEY_CATEGORYSET];
                if (null == categorySet)
                {
                    //
                    // There's no data in the cache, so load it and cache it   Fill   the dataset
                   categorySet =                 
                    // Now cache the data for an hour
                    //
                    Cache.Insert(KEY_CATEGORYSET, categorySet);
                }
      

  4.   

    DataSet categorySet = (DataSet)Cache["KEY_CATEGORYSET"];
    //KEY_CATEGORYSET is string
      

  5.   

    to dragon2002:
    能写一个具体的例子给我看看吗?怎样使用Cache?
      

  6.   

    Property ds() As DataSet
            Get
                Return Session("MYDS")
            End Get
            Set(ByVal Value As DataSet)
                Session("MYDS") = Value
            End Set
        End Property
      

  7.   

    using System;
    using System.Collections;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Web;
    using System.Web.SessionState;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.HtmlControls;
    using System.Data.SqlClient ;
    namespace testxmlsuc
    {
    /// <summary>
    /// WebForm3 的摘要说明。
    /// </summary>
    public class WebForm3 : System.Web.UI.Page
    {
    protected System.Web.UI.WebControls.Button Button1;
    protected System.Web.UI.WebControls.DataGrid DataGrid1;
        // DataSet categorySet=new DataSet();
    private void Page_Load(object sender, System.EventArgs e)
    {
    // 在此处放置用户代码以初始化页面         DataSet   categorySet = (DataSet)Cache["DataSetname"];
    if (null == categorySet)
    {
    // There's no data in the cache, so load it and cache it   Fill   the dataset
    SqlConnection     conn= new SqlConnection("server=yourservernmae;uid=sa;pwd=;database=testcdd");
    SqlDataAdapter myada= new SqlDataAdapter("select * from class",conn); 
    //                       DataSet mydata=new DataSet();
    // myada.Fill(mydata,"class");
    categorySet =new DataSet();
    myada.Fill(categorySet,"class");
    // Now cache the data for an hour
     Cache.Insert("DataSetname", categorySet);
    }
    //DataGrid1.DataSource=categorySet;
    //DataGrid1.DataBind();
    } #region Web Form Designer generated code
    override protected void OnInit(EventArgs e)
    {
    //
    // CODEGEN:该调用是 ASP.NET Web 窗体设计器所必需的。
    //
    InitializeComponent();
    base.OnInit(e);
    }

    /// <summary>
    /// 设计器支持所需的方法 - 不要使用代码编辑器修改
    /// 此方法的内容。
    /// </summary>
    private void InitializeComponent()
    {    
    this.DataGrid1.SelectedIndexChanged += new System.EventHandler(this.DataGrid1_SelectedIndexChanged);
    this.Button1.Click += new System.EventHandler(this.Button1_Click);
    this.Load += new System.EventHandler(this.Page_Load); }
    #endregion private void DataGrid1_SelectedIndexChanged(object sender, System.EventArgs e)
    {

    } private void Button1_Click(object sender, System.EventArgs e)
    {
    DataSet categorySet = (DataSet)Cache["DataSetname"];
    DataGrid1.DataSource=categorySet;
    DataGrid1.DataBind();
    }
    }
    }
      

  8.   

    其实很简单的
    在定义的方法中返回的是DataSet
    如:
    public DataSet Get_all_cjb()
    {
    if (brokerConn.State.ToString()=="Closed")
    {
       brokerConn.Open();
    }
    SqlDataAdapter jjrDa=new SqlDataAdapter("select * from broker_BMB",brokerConn);
    DataSet jjrds=new DataSet();
    jjrDa.Fill(jjrds,"allcjb");
    brokerConn.Close();
    return jjrds;
    }调用的时候
    DataSet ds=Get_all_cjb();
    在使用就没有问题了