您的位置:首页 > 职场人生

[.Net码农].NET Framework 4.5 DataRow 类

2014-10-27 09:59 225 查看
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 中)



语法

C#

C++

F#

VB

public class DataRow


DataRow 类型公开以下成员。



构造函数

显示: 继承 保护

名称说明



DataRow基础结构。初始化 DataRow 的新实例。 从生成器中构造行。 仅供内部使用。
页首



属性

显示: 继承 保护

名称说明



HasErrors获取一个值,该值指示某行是否包含错误。



Item[DataColumn]获取或设置存储在指定的 DataColumn 中的数据。



Item[Int32]获取或设置存储在由索引指定的列中的数据。



Item[String]获取或设置存储在由名称指定的列中的数据。



Item[DataColumn, DataRowVersion]获取存储在指定的 DataColumn 中的数据的指定版本。



Item[Int32, DataRowVersion]获取存储在由索引和要检索的数据的版本指定的列中的数据。



Item[String, DataRowVersion]获取存储在已命名列中的数据的指定版本。



ItemArray通过一个数组来获取或设置此行的所有值。



RowError获取或设置行的自定义错误说明。



RowState获取与该行和 DataRowCollection 的关系相关的当前状态。



Table获取该行拥有其架构的 DataTable
页首



方法

显示: 继承 保护

名称说明



AcceptChanges提交自上次调用 AcceptChanges 以来对该行进行的所有更改。



BeginEdit对 DataRow 对象开始编辑操作。



CancelEdit取消对该行的当前编辑。



ClearErrors清除行的错误。 这包括 RowError 和用 SetColumnError 设置的错误。



Delete删除 DataRow。



EndEdit终止发生在该行的编辑。



Equals(Object)确定指定的对象是否等于当前对象。 (继承自 Object。)



Finalize允许对象在“垃圾回收”回收之前尝试释放资源并执行其他清理操作。 (继承自 Object。)



GetChildRows(DataRelation)使用指定的 DataRelation 获取此 DataRow 的子行。



GetChildRows(String)使用 DataRelation 的指定 RelationName 获取 DataRow 的子行。



GetChildRows(DataRelation, DataRowVersion)使用指定的 DataRelationDataRowVersion 获取 DataRow 的子行。



GetChildRows(String, DataRowVersion)使用 DataRelation 的指定 RelationNameDataRowVersion 获取 DataRow 的子行。



GetColumnError(DataColumn)获取指定的 DataColumn 的错误说明。



GetColumnError(Int32)获取由索引指定的列的错误说明。



GetColumnError(String)获取由名称指定的列的错误说明。



GetColumnsInError获取包含错误的列的数组。



GetHashCode作为默认哈希函数。 (继承自 Object。)



GetParentRow(DataRelation)使用指定的 DataRelation 获取 DataRow 的父行。



GetParentRow(String)使用 DataRelation 的指定 RelationName 获取 DataRow 的父行。



GetParentRow(DataRelation, DataRowVersion)使用指定的 DataRelationDataRowVersion 获取 DataRow 的父行。



GetParentRow(String, DataRowVersion)使用 DataRelation 的指定 RelationNameDataRowVersion 获取 DataRow 的父行。



GetParentRows(DataRelation)使用指定的 DataRelation 获取 DataRow 的父行。



GetParentRows(String)使用 DataRelation 的指定 RelationName 获取 DataRow 的父行。



GetParentRows(DataRelation, DataRowVersion)使用指定的 DataRelationDataRowVersion 获取 DataRow 的父行。



GetParentRows(String, DataRowVersion)使用 DataRelation 的指定 RelationNameDataRowVersion 获取 DataRow 的父行。



GetType获取当前实例的 Type。 (继承自 Object。)



HasVersion获取一个值,该值指示指定的版本是否存在。



IsNull(DataColumn)获取一个值,该值指示指定的 DataColumn 是否包含 null 值。



IsNull(Int32)获取一个值,该值指示位于指定索引处的列是否包含 null 值。



IsNull(String)获取一个值,该值指示指定的列是否包含 null 值。



IsNull(DataColumn, DataRowVersion)获取一个值,该值指示指定的 DataColumnDataRowVersion 是否包含
null 值。



MemberwiseClone创建当前 Object 的浅表副本。 (继承自 Object。)



RejectChanges拒绝自上次调用 AcceptChanges 以来对该行进行的所有更改。



SetAdded将 DataRow 的 Rowstate 更改为 Added。



SetColumnError(DataColumn, String)为指定为 DataColumn 的列设置错误说明。



SetColumnError(Int32, String)为由索引指定的列设置错误说明。



SetColumnError(String, String)为由名称指定的列设置错误说明。



SetModified将 DataRow 的 Rowstate 更改为 Modified。



SetNull将指定的 DataColumn 的值设置为 null 值。



SetParentRow(DataRow)用新指定的父级 DataRow 设置 DataRow 的父行。



SetParentRow(DataRow, DataRelation)用新指定的父级 DataRow 和 DataRelation 设置 DataRow 的父行。



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 的值。

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

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

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



示例

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

C#

VB

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 系统要求



线程安全

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



请参阅


参考

System.Data 命名空间
AcceptChanges
Add
DataColumnCollection
DataColumn
DataRowView
DataTable
HasVersion
IsNull
Item
NewRow
DataRowCollection


其他资源

DataSet、DataTable 和 DataView
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: