C# 是否使用返回数据表中的数据?

C# 是否使用返回数据表中的数据?,c#,wpf,visual-studio,sql-server-2008,C#,Wpf,Visual Studio,Sql Server 2008,我有一个像这样的Datatable函数 public DataTable LoadCategory(SetupCategoryBO scBO) { DBConnect myConnection = new DBConnect(); myConnection.connection.Open(); SqlCommand comm = new SqlCommand("ph.setup_category_proc

我有一个像这样的Datatable函数

 public DataTable LoadCategory(SetupCategoryBO scBO)
        {
            DBConnect myConnection = new DBConnect();
            myConnection.connection.Open();

            SqlCommand comm = new SqlCommand("ph.setup_category_proc", myConnection.connection);
            comm.CommandType = CommandType.StoredProcedure;

            DataSet ds = new DataSet();
            SqlDataAdapter da = new SqlDataAdapter();
            try
            {
                comm.Parameters.AddWithValue("@unitID", scBO.UnitID);
                comm.Parameters.AddWithValue("@objectID", scBO.ObjectID);
                comm.Parameters.AddWithValue("@user", scBO.UserID);
                comm.Parameters.AddWithValue("@flag", scBO.Flag);
                comm.Parameters.AddWithValue("@parentID", scBO.ParID);

                comm.UpdatedRowSource = UpdateRowSource.None;

                da.SelectCommand = comm;
                da.Fill(ds, "CategoryTable");
                return ds.Tables["CategoryTable"];
}
我用它从数据表中获取数据

     DataTable dt = new DataTable();
               dt = Scdal.LoadCategory(ScBo);
datagrid.Datacontext=dt;
我应该使用Sql数据适配器吗?datagrid显示为空

SetupCategoryBO只是用来初始化值。据我所知,这些值都很好

我在这里做错了什么?

试试这个代码

DataTable dt = Scdal.LoadCategory(ScBo);
datagrid.Datacontext=dt.DefaultView;

您是否正在数据表
dt
中获取数据?通过调试,检查是否在
try
块中添加断点,并对其进行调试,以查看是否存在任何错误,并且不会抛出
catch
块。或者注释
try
catch
块以查看发生了什么。