C#/.Net零碎

来源:互联网 发布:仙剑三mac打不开 编辑:程序博客网 时间:2024/05/24 05:18

本文将不定期更新,算是学习C#/.Net的笔记吧

1、DataGridView控件的DataMember最好与相应的SqlDataAdapter的Fill(dataset,tablename)中的tablename一致, 以免抛出异常, 尤其当查询牵涉到过多的表而不好确定tablename时

例如

public static void ReplaceDataGridViewWithQuery(DataGridView dataGridView, string selectSql, SqlConnection sqlConnection)
{
    if (dataGridView.DataSource != null)
        ((DataSet)dataGridView.DataSource).Dispose(); // 此处转换为相应的数据对象, 然后释放之
    DataSet ds = new DataSet();
    System.Data.SqlClient.SqlDataAdapter da
        = new System.Data.SqlClient.SqlDataAdapter(selectSql, sqlConnection);
    da.Fill(ds, dataGridView.DataMember);
    dataGridView.DataSource = ds;
    da.Dispose();
    }
}

调用此函数之前, 要先设置dataGridView的DataMember(这个可以随便设, 只要保证fill的tablename参数与DataMember一致就行, 但最好是有意义的), 然后就可以避免涉及多表查询(不是多个查询)时异常, 至少对于SqlServer是这样

原创粉丝点击