CreateBuildingTable 是Class1 的方法,要用这个方法要现声明Class1类的对象,通过对象调用这个方法。或者将方法声明成静态public static Datatable…直接用Class1.CreateB…来调用

解决方案 »

  1.   

    DataSet与SqlConnection之间本来是没有什么联系的,可以通过DataAdapter对DataSet进行填充。conn = new SqlConnection();
    conn.ConnectionString = @"data source=SQLSERVER;User ID=sa;Password=;initial catalog=Orders;Connection Reset=FALSE";sqldaOrder = new SqlDataAdapter();
    sqldaOrder.TableMappings.Add("Table", "Order")
    sqldaOrder .SelectCommand = new SqlCommand("select * from order", conn);sqldaOrder.Fill(DS, "Table");
    你的那段程序里没有什么错,不知道 ManfacturePrimaryKey(BuildingTable,"Building") 和 ManfactureUnique( ) 做了些什么,把这两行先注释掉看看。
      

  2.   

    CreateBuildingTable() 方法是 Class1的方法吧,如果调用 CreateBuildingTable 方法之处没有先创建 Class1 的一个对象是会出错的。Class1 a = new Class1();
    a.CreateBuildingTable();
      

  3.   

    让"DataSet对象"和"SqlConnection对象"关联?【不明白】方法CreateBuildingTable()本身应该没问题,如果你想在本身的类之外调用此方法,应该做如下改变:
    public DataTable CreateBuildingTable(){...}
    调用:在Class2中,
    Class1 myClass=new Class1();
    myClass.CreateBuildingTable();
                  
    或者:
    public static DataTable CreateBuildingTable(){...}
    调用:在Class2中,
    Class1.CreateBuildingTable();//因为静态方法属于类.