http://msdn.microsoft.com/zh-cn/library/system.data.datarow(v=vs.110).aspx



DataRow 类

.NET Framework 4.5
4(共 4)对本文的评价是有帮助 评价此主题

表示 DataTable 中的一行数据。

System.Object 
  System.Data.DataRow

命名空间:  System.Data
程序集:  System.Data(在 System.Data.dll 中)

public class DataRow

DataRow 类型公开以下成员。

显示: 
  名称 说明
受保护的方法由 XNA Framework 提供支持 DataRow 基础结构。初始化 DataRow 的新实例。 从生成器中构造行。 仅供内部使用。
页首

显示: 
  名称 说明
公共属性由 XNA Framework 提供支持 HasErrors 获取一个值,该值指示某行是否包含错误。
公共属性由 XNA Framework 提供支持 Item[DataColumn] 获取或设置存储在指定的 DataColumn 中的数据。
公共属性由 XNA Framework 提供支持 Item[Int32] 获取或设置存储在由索引指定的列中的数据。
公共属性由 XNA Framework 提供支持 Item[String] 获取或设置存储在由名称指定的列中的数据。
公共属性由 XNA Framework 提供支持 Item[DataColumn, DataRowVersion] 获取存储在指定的 DataColumn 中的数据的指定版本。
公共属性由 XNA Framework 提供支持 Item[Int32, DataRowVersion] 获取存储在由索引和要检索的数据的版本指定的列中的数据。
公共属性由 XNA Framework 提供支持 Item[String, DataRowVersion] 获取存储在已命名列中的数据的指定版本。
公共属性由 XNA Framework 提供支持 ItemArray 通过一个数组来获取或设置此行的所有值。
公共属性由 XNA Framework 提供支持 RowError 获取或设置行的自定义错误说明。
公共属性由 XNA Framework 提供支持 RowState 获取与该行和 DataRowCollection 的关系相关的当前状态。
公共属性由 XNA Framework 提供支持 Table 获取该行拥有其架构的 DataTable
页首

显示: 
  名称 说明
公共方法由 XNA Framework 提供支持 AcceptChanges 提交自上次调用 AcceptChanges 以来对该行进行的所有更改。
公共方法由 XNA Framework 提供支持 BeginEdit 对 DataRow 对象开始编辑操作。
公共方法由 XNA Framework 提供支持 CancelEdit 取消对该行的当前编辑。
公共方法由 XNA Framework 提供支持 ClearErrors 清除行的错误。 这包括 RowError 和用 SetColumnError 设置的错误。
公共方法由 XNA Framework 提供支持 Delete 删除 DataRow
公共方法由 XNA Framework 提供支持 EndEdit 终止发生在该行的编辑。
公共方法由 XNA Framework 提供支持 Equals(Object) 确定指定的对象是否等于当前对象。 (继承自 Object。)
受保护的方法由 XNA Framework 提供支持 Finalize 允许对象在“垃圾回收”回收之前尝试释放资源并执行其他清理操作。 (继承自 Object。)
公共方法由 XNA Framework 提供支持 GetChildRows(DataRelation) 使用指定的 DataRelation 获取此 DataRow 的子行。
公共方法由 XNA Framework 提供支持 GetChildRows(String) 使用 DataRelation 的指定 RelationName 获取 DataRow 的子行。
公共方法由 XNA Framework 提供支持 GetChildRows(DataRelation, DataRowVersion) 使用指定的 DataRelation 和 DataRowVersion 获取 DataRow 的子行。
公共方法由 XNA Framework 提供支持 GetChildRows(String, DataRowVersion) 使用 DataRelation 的指定 RelationName 和 DataRowVersion 获取 DataRow 的子行。
公共方法由 XNA Framework 提供支持 GetColumnError(DataColumn) 获取指定的 DataColumn 的错误说明。
公共方法由 XNA Framework 提供支持 GetColumnError(Int32) 获取由索引指定的列的错误说明。
公共方法由 XNA Framework 提供支持 GetColumnError(String) 获取由名称指定的列的错误说明。
公共方法由 XNA Framework 提供支持 GetColumnsInError 获取包含错误的列的数组。
公共方法由 XNA Framework 提供支持 GetHashCode 作为默认哈希函数。 (继承自 Object。)
公共方法由 XNA Framework 提供支持 GetParentRow(DataRelation) 使用指定的 DataRelation 获取 DataRow 的父行。
公共方法由 XNA Framework 提供支持 GetParentRow(String) 使用 DataRelation 的指定 RelationName 获取 DataRow 的父行。
公共方法由 XNA Framework 提供支持 GetParentRow(DataRelation, DataRowVersion) 使用指定的 DataRelation 和 DataRowVersion 获取 DataRow 的父行。
公共方法由 XNA Framework 提供支持 GetParentRow(String, DataRowVersion) 使用 DataRelation 的指定 RelationName 和 DataRowVersion 获取 DataRow 的父行。
公共方法由 XNA Framework 提供支持 GetParentRows(DataRelation) 使用指定的 DataRelation 获取 DataRow 的父行。
公共方法由 XNA Framework 提供支持 GetParentRows(String) 使用 DataRelation 的指定 RelationName 获取 DataRow 的父行。
公共方法由 XNA Framework 提供支持 GetParentRows(DataRelation, DataRowVersion) 使用指定的 DataRelation 和 DataRowVersion 获取 DataRow 的父行。
公共方法由 XNA Framework 提供支持 GetParentRows(String, DataRowVersion) 使用 DataRelation 的指定 RelationName 和 DataRowVersion 获取 DataRow 的父行。
公共方法由 XNA Framework 提供支持 GetType 获取当前实例的 Type (继承自 Object。)
公共方法由 XNA Framework 提供支持 HasVersion 获取一个值,该值指示指定的版本是否存在。
公共方法由 XNA Framework 提供支持 IsNull(DataColumn) 获取一个值,该值指示指定的 DataColumn 是否包含 null 值。
公共方法由 XNA Framework 提供支持 IsNull(Int32) 获取一个值,该值指示位于指定索引处的列是否包含 null 值。
公共方法由 XNA Framework 提供支持 IsNull(String) 获取一个值,该值指示指定的列是否包含 null 值。
公共方法由 XNA Framework 提供支持 IsNull(DataColumn, DataRowVersion) 获取一个值,该值指示指定的 DataColumn 和 DataRowVersion 是否包含 null 值。
受保护的方法由 XNA Framework 提供支持 MemberwiseClone 创建当前 Object 的浅表副本。 (继承自 Object。)
公共方法由 XNA Framework 提供支持 RejectChanges 拒绝自上次调用 AcceptChanges 以来对该行进行的所有更改。
公共方法由 XNA Framework 提供支持 SetAdded 将 DataRow 的 Rowstate 更改为 Added
公共方法由 XNA Framework 提供支持 SetColumnError(DataColumn, String) 为指定为 DataColumn 的列设置错误说明。
公共方法由 XNA Framework 提供支持 SetColumnError(Int32, String) 为由索引指定的列设置错误说明。
公共方法由 XNA Framework 提供支持 SetColumnError(String, String) 为由名称指定的列设置错误说明。
公共方法由 XNA Framework 提供支持 SetModified 将 DataRow 的 Rowstate 更改为 Modified
受保护的方法由 XNA Framework 提供支持 SetNull 将指定的 DataColumn 的值设置为 null 值。
公共方法由 XNA Framework 提供支持 SetParentRow(DataRow) 用新指定的父级 DataRow 设置 DataRow 的父行。
公共方法由 XNA Framework 提供支持 SetParentRow(DataRow, DataRelation) 用新指定的父级 DataRow 和 DataRelation 设置 DataRow 的父行。
公共方法由 XNA Framework 提供支持 ToString 返回表示当前对象的字符串。 (继承自 Object。)
页首

显示: 
  名称 说明
公共扩展方法 Field<T>(DataColumn) 已重载。 提供对指定行中的每个列值的强类型访问。 Field 方法还支持可以为 null 的类型。 (由 DataRowExtensions 定义。)
公共扩展方法 Field<T>(Int32) 已重载。 提供对指定行中的每个列值的强类型访问。 Field 方法还支持可以为 null 的类型。 (由 DataRowExtensions 定义。)
公共扩展方法 Field<T>(String) 已重载。 提供对指定行中的每个列值的强类型访问。 Field 方法还支持可以为 null 的类型。 (由 DataRowExtensions 定义。)
公共扩展方法 Field<T>(DataColumn, DataRowVersion) 已重载。 提供对指定行中的每个列值的强类型访问。 Field 方法还支持可以为 null 的类型。 (由 DataRowExtensions 定义。)
公共扩展方法 Field<T>(Int32, DataRowVersion) 已重载。 提供对指定行中的每个列值的强类型访问。 Field 方法还支持可以为 null 的类型。 (由 DataRowExtensions 定义。)
公共扩展方法 Field<T>(String, DataRowVersion) 已重载。 提供对指定行中的每个列值的强类型访问。 Field 方法还支持可以为 null 的类型。 (由 DataRowExtensions 定义。)
公共扩展方法 SetField<T>(DataColumn, T) 已重载。 为 DataRow 中的指定列设置一个新值。 SetField 方法还支持可以为 null 的类型。 (由 DataRowExtensions 定义。)
公共扩展方法 SetField<T>(Int32, T) 已重载。 为在其上调用此方法的 DataRow 中的指定列设置一个新值。 SetField 方法还支持可以为 null 的类型。 (由DataRowExtensions 定义。)
公共扩展方法 SetField<T>(String, T) 已重载。 为 DataRow 中的指定列设置一个新值。 SetField 方法还支持可以为 null 的类型。 (由 DataRowExtensions 定义。)
页首

DataRow 和 DataColumn 对象是 DataTable 的主要组件。 使用 DataRow 对象及其属性和方法检索、评估、插入、删除和更新 DataTable 中的值。 DataRowCollection 表示 DataTable中的实际 DataRow 对象,DataColumnCollection 中包含用于描述 DataTable 的架构的 DataColumn 对象。 使用重载的 Item 属性返回或设置 DataColumn 的值。

使用 HasVersion 和 IsNull 属性确定特定行值的状态,使用 RowState 属性确定行相对于它的父级 DataTable 的状态。

若要创建新的 DataRow,请使用 DataTable 对象的 NewRow 方法。 创建新的 DataRow 之后,请使用 Add 方法将新的 DataRow 添加到 DataRowCollection 中。 最后,调用 DataTable对象的 AcceptChanges 方法以确认是否已添加。 有关将数据添加到 DataTable 中的更多信息,请参见 向数据表中添加数据

您可通过调用 DataRowCollection 的 Remove 方法或调用 DataRow 对象的 Delete 方法,从 DataRowCollection 中删除 DataRow Remove 方法将行从集合中移除。 与此相反,Delete标记要移除的 DataRow 在调用 AcceptChanges 方法时发生实际移除。 通过调用 Delete,您可在实际删除行之前以编程方式检查哪些行被标记为移除。 有关详细信息,请参阅 DataRow 删除

下面的示例通过调用 DataTable 对象的 NewRow 方法创建新的 DataRow

private void CreateNewDataRow()
{
    // Use the MakeTable function below to create a new table.
    DataTable table;
    table = MakeNamesTable();

    // Once a table has been created, use the 
    // NewRow to create a DataRow.
    DataRow row;
    row = table.NewRow();

    // Then add the new row to the collection.
    row["fName"] = "John";
    row["lName"] = "Smith";
    table.Rows.Add(row);

    foreach(DataColumn column in table.Columns)
        Console.WriteLine(column.ColumnName);
    dataGrid1.DataSource=table;
}

private DataTable MakeNamesTable()
{
    // Create a new DataTable titled 'Names.'
    DataTable namesTable = new DataTable("Names"); 

    // Add three column objects to the table.
    DataColumn idColumn = new  DataColumn();
    idColumn.DataType = System.Type.GetType("System.Int32");
    idColumn.ColumnName = "id";
    idColumn.AutoIncrement = true;
    namesTable.Columns.Add(idColumn);

    DataColumn fNameColumn = new DataColumn();
    fNameColumn.DataType = System.Type.GetType("System.String");
    fNameColumn.ColumnName = "Fname";
    fNameColumn.DefaultValue = "Fname";
    namesTable.Columns.Add(fNameColumn);

    DataColumn lNameColumn = new DataColumn();
    lNameColumn.DataType = System.Type.GetType("System.String");
    lNameColumn.ColumnName = "LName";
    namesTable.Columns.Add(lNameColumn);

    // Create an array for DataColumn objects.
    DataColumn [] keys = new DataColumn [1];
    keys[0] = idColumn;
    namesTable.PrimaryKey = keys;

    // Return the new DataTable.
    return namesTable;
}


.NET Framework

受以下版本支持:4.5.2、4.5.1、4.5、4、3.5、3.0、2.0、1.1、1.0

.NET Framework Client Profile

受以下版本支持:4、3.5 SP1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008(不支持服务器核心角色), Windows Server 2008 R2(支持带 SP1 或更高版本的服务器核心角色;不支持 Itanium)

.NET Framework 并不是对每个平台的所有版本都提供支持。有关支持的版本的列表,请参阅.NET Framework 系统要求

该类型对于多线程读操作是安全的。 您必须使任何写操作同步。







本文转载:CSDN博客