永发信息网

急急急!!!求数据库、相关的代码解释哈 谢谢啦

答案:2  悬赏:60  手机版
解决时间 2021-02-01 06:38
  • 提问者网友:無理詩人
  • 2021-02-01 00:30
急急急!!!求数据库、相关的代码解释哈 谢谢啦
最佳答案
  • 五星知识达人网友:长青诗
  • 2021-02-01 01:06
private void getdata(string sql)
{
DataSet result = new DataSet(); //建立一个dataset对象(根据下面那句话,new是没必要的。。)
result = new Class1().hsggetdata(sql); //result重新指向一个通过已传入作为参数的sql语句生成的dataset对象
if (result != null) //如果result不是空
{
if (result.Tables[0].Rows.Count > 0) //如果result第一个表不是空
{
DataGrid1.DataSource = result.Tables[0]; //datagrid1 的数据源绑定到第一张表
DataGrid1.DataBind(); //绑定
}
else
{
DataGrid1.DataSource = null; //datagrid清空
DataGrid1.DataBind(); //绑定
}
}
}
}追问result = new Class1().hsggetdata(sql); //result重新指向一个通过已传入作为参数的sql语句生成的dataset对象
能解释详细点吗?追答简单地说,就是重新赋值了,不过这是一个引用类型,没有值的概念,借用下而已。。。当时我找不到合适的措辞。

这段代码有好几个步骤

生成了一个新的Class1对象
调用这个新对象下面的hsggetdata方法,并传入sql语句
这个方法返回了一个dataset对象,我们用result去接他。就是这样追问好 先谢谢哈, 我还有一个【上传作业】的代码不理解 等下申请个号发问你记得来 指点下哈
全部回答
  • 1楼网友:话散在刀尖上
  • 2021-02-01 01:40
private void getdata(string sql)
{
DataSet result = new DataSet(); //建一个dataset类型变量来收值
result = new Class1().hsggetdata(sql); //收到来自hsggetdata方法的值
if (result != null)//判断有没有收到
{
if (result.Tables[0].Rows.Count > 0)//如果有一条以上的记录
{
DataGrid1.DataSource = result.Tables[0];//付给datasource
DataGrid1.DataBind();//刷新显示出来的结果
}
else
{
DataGrid1.DataSource = null; //否则清空数据源
DataGrid1.DataBind();//刷新显示的数据
}
}
}
}
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯