C# Can';无法使数据集的更新正常工作

C# Can';无法使数据集的更新正常工作,c#,database,visual-studio-2012,dataset,C#,Database,Visual Studio 2012,Dataset,我有几个问题。我正在做一个健身房管理系统提交给我的大学。我通过阅读www.homeandlern.co.uk上的教程实现了一个基于服务的数据库。问题是我不能更新它 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Gym_Management_System { class GMSDConn

我有几个问题。我正在做一个健身房管理系统提交给我的大学。我通过阅读www.homeandlern.co.uk上的教程实现了一个基于服务的数据库。问题是我不能更新它

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Gym_Management_System
{
   class GMSDConnectionClass
   {
      public string sql_string;
      public string strCon;

      public string Sql
      {
          set { sql_string = value; }
      }

      public string connection_string
      {

          set { strCon = value; }

      }

      public System.Data.DataSet GetConnection
      {

          get { return MyDataSet(); }

      }

      public System.Data.DataSet MyDataSet()
      {
          System.Data.SqlClient.SqlConnection con = new
                                       System.Data.SqlClient.SqlConnection(strCon);
          con.Open();
          System.Data.SqlClient.SqlDataAdapter da_1 = new
                              System.Data.SqlClient.SqlDataAdapter(sql_string, con);
          System.Data.DataSet dat_set = new System.Data.DataSet();
          da_1.Fill(dat_set, "Table_data_1");
          con.Close();
          return dat_set;
      } 

      public void UpdateDatabase(System.Data.DataSet ds)
      {
          System.Data.SqlClient.SqlCommandBuilder cb = new
            System.Data.SqlClient.SqlCommandBuilder(da_1);

          cb.DataAdapter.Update(ds.Tables[0]);
      }
   }
}
问题是我无法访问
UpdateDatabase()
方法中的
da_1

怎么了?我试过几次,但都没能成功。这可能是一个简单的问题,但我对数据库和这些东西是完全陌生的

注:
我必须在2014年1月23日提交此项目。

变量不能在其声明范围之外访问。有各种范围规则。。这里您最关心的是方法范围。这可能有助于解释:

 public System.Data.DataSet MyDataSet()
 {
      // da_1 is delcared in this method.. it is only available here
      ...
      System.Data.SqlClient.SqlDataAdapter da_1 = new
                          System.Data.SqlClient.SqlDataAdapter(sql_string, con);
      ...
 } 

 public void UpdateDatabase(System.Data.DataSet ds)
 {
      // not available here
 }
以便跨类中的方法访问它。。您必须在类级别声明它:

class GMSDConnectionClass
{
    System.Data.SqlClient.SqlDataAdapter da_1;
然后,您可以在其他方法中按如下方式分配:

da_1 = new System.Data.SqlClient.SqlDataAdapter(sql_string, con);

请不要重复问题标题中的标签。是的,这是有效的。谢谢你,伙计。我会在这里询问更多信息。但它仍然没有更新我的数据库:(