首页/技术开发/内容

怎样在Visual C# .NET中完成一个DataSet的不同记录的选取

技术开发2024-06-02 阅读()
怎样在Visual C# .NET中实现一个DataSet的不同记录的选取
来自:Microsoft Knowledge Base Article – 326176,地址: http://support.microsoft.com/default.aspx?scid=kb;EN-US;326176

摘要:

这是一篇基础性由浅入深的文章,这篇举例说明了怎样实现并怎样使用一个DataSetHelper类,该类使用简洁代码来创建一个新的使某个DataTable对象指定的某列的的值具有唯一性的DataTable对象。

????? 为了实现这个目的,你可以使用SelectDistinct这个公开方法,也可以使用一个私有的通过比较可能包含NULL值(DBNull.Value)的字段的辅助方法。

?????? DataSetHelper类包含一个DataSet成员变量,你可以随意的指定现有的一个DataSet对象作为这个DataSet成员的变量。如果这个成员变量是一个有效的DataSet,任一一个SelectDistinct方法创建的DataTable对象都能被填充到这个DataSet里。那样,这个方法就请求返回涉及的DataTable对象。

要求:

下列清单列出的是推荐的硬件、软件、网络基础设施和必须的补丁包:

(1)、Microsoft Windows XP, Windows 2000, or Windows NT 4.0 Service Pack 6a

(2)、Microsoft Visual Studio .NET

这篇文章假设你已熟悉下面的主题:

(1)、Visual C# .NET的语法

(2)、ADO.NET基本原理和语法

DataSetHelper 构造类:

(1)、开始Microsoft Visual Studio .NET。

(2)、在文件(File)菜单,点新建(New),和然后点击项目(Project)。

(3)、在新建项目(New Project)对话框, 点击Visual C#项目(Visual C# Projects)下的项目类型(Project Types),然后点击类库(Class Library)下的模板(Templates)。

(4)、在名称栏里填上DataSetHelper。

(5)、用以下代码替换类代码:

public class DataSetHelper

{

???????? public DataSet ds;

???????? public DataSetHelper(ref DataSet DataSet)

???????? {

???????? ??????? ds = DataSet;

???????? }

???????? public DataSetHelper()

???????? {

???????? ??????? ds = null;

???????? }

}

你可以用2次重载的构造函数来创建一个带或不带一个有效的DataSet的实例类。因为类是涉及一个有效的DataSet,那么这个方法返回的DataTable对象这就自动的填充到这个DataSet里。

注: 增加下面代码在代码窗口的顶部:

using System.Data;

?

SelectDistinct 方法:

这个部分包含代码为公开的SelectDistinct方法和私有的ColumnEqual辅助方法。

(1)、在类定义里增加下面的私有方法,该方法同样被用在其他的DataSetHelper 文章里,它被用做来比较字段的值(包括NULL值) 。

private bool ColumnEqual(object A, object B)

{

???????? ?? // Compares two values to see if they are equal. Also compares DBNULL.Value.

??????? // Note: If your DataTable contains object fields, then you must extend this

??????? // function to handle them in a meaningful way if you intend to group on them.

???????????????????????????

??????? if ( A == DBNull.Value && B == DBNull.Value ) //? both are DBNull.Value

??????????? return true;

??????? if ( A == DBNull.Value (北联网教程,专业提供视频软件下载)

第1页  第2页  第3页  第4页  第5页 

……

相关阅读