<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://nfex.ru/index.php?action=history&amp;feed=atom&amp;title=Csharp%2FCSharp_Tutorial%2FADO.Net%2FDataRow</id>
		<title>Csharp/CSharp Tutorial/ADO.Net/DataRow - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://nfex.ru/index.php?action=history&amp;feed=atom&amp;title=Csharp%2FCSharp_Tutorial%2FADO.Net%2FDataRow"/>
		<link rel="alternate" type="text/html" href="http://nfex.ru/index.php?title=Csharp/CSharp_Tutorial/ADO.Net/DataRow&amp;action=history"/>
		<updated>2026-04-30T03:23:48Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://nfex.ru/index.php?title=Csharp/CSharp_Tutorial/ADO.Net/DataRow&amp;diff=6438&amp;oldid=prev</id>
		<title> в 15:31, 26 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://nfex.ru/index.php?title=Csharp/CSharp_Tutorial/ADO.Net/DataRow&amp;diff=6438&amp;oldid=prev"/>
				<updated>2010-05-26T15:31:53Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 15:31, 26 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
			</entry>

	<entry>
		<id>http://nfex.ru/index.php?title=Csharp/CSharp_Tutorial/ADO.Net/DataRow&amp;diff=6439&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://nfex.ru/index.php?title=Csharp/CSharp_Tutorial/ADO.Net/DataRow&amp;diff=6439&amp;oldid=prev"/>
				<updated>2010-05-26T12:19:04Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==Accessing Data Values in a DataRow Array by column name==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;using System;&lt;br /&gt;
using System.Data;&lt;br /&gt;
using System.Data.SqlClient;&lt;br /&gt;
    class Program&lt;br /&gt;
    {&lt;br /&gt;
        static void Main(string[] args)&lt;br /&gt;
        {&lt;br /&gt;
            string sqlConnectString = &amp;quot;Data Source=(local);Integrated security=SSPI;Initial Catalog=AdventureWorks;&amp;quot;;&lt;br /&gt;
            string sqlSelect =&amp;quot;SELECT ContactID, FirstName, LastName FROM Person.Contact&amp;quot;;&lt;br /&gt;
            SqlDataAdapter da = new SqlDataAdapter(sqlSelect, sqlConnectString);&lt;br /&gt;
            DataTable dt = new DataTable();&lt;br /&gt;
            da.Fill(dt);&lt;br /&gt;
            DataRow[] dra = new DataRow[dt.Rows.Count];&lt;br /&gt;
            dt.Rows.CopyTo(dra, 0);&lt;br /&gt;
            Console.WriteLine(&amp;quot;FirstName = {0}&amp;quot;, dra[2][&amp;quot;FirstName&amp;quot;]);&lt;br /&gt;
        }&lt;br /&gt;
    }&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Accessing Data Values in a DataRow Array by column name and return default value==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;using System;&lt;br /&gt;
using System.Data;&lt;br /&gt;
using System.Data.SqlClient;&lt;br /&gt;
    class Program&lt;br /&gt;
    {&lt;br /&gt;
        static void Main(string[] args)&lt;br /&gt;
        {&lt;br /&gt;
            string sqlConnectString = &amp;quot;Data Source=(local);Integrated security=SSPI;Initial Catalog=AdventureWorks;&amp;quot;;&lt;br /&gt;
            string sqlSelect =&amp;quot;SELECT ContactID, FirstName, LastName FROM Person.Contact&amp;quot;;&lt;br /&gt;
            SqlDataAdapter da = new SqlDataAdapter(sqlSelect, sqlConnectString);&lt;br /&gt;
            DataTable dt = new DataTable();&lt;br /&gt;
            da.Fill(dt);&lt;br /&gt;
            DataRow[] dra = new DataRow[dt.Rows.Count];&lt;br /&gt;
            dt.Rows.CopyTo(dra, 0);&lt;br /&gt;
            Console.WriteLine(&amp;quot;FirstName = {0}&amp;quot;,dra[2][&amp;quot;FirstName&amp;quot;, DataRowVersion.Default]);&lt;br /&gt;
        }&lt;br /&gt;
    }&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Accessing Data Values in a DataRow Array by index==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;using System;&lt;br /&gt;
using System.Data;&lt;br /&gt;
using System.Data.SqlClient;&lt;br /&gt;
    class Program&lt;br /&gt;
    {&lt;br /&gt;
        static void Main(string[] args)&lt;br /&gt;
        {&lt;br /&gt;
            string sqlConnectString = &amp;quot;Data Source=(local);Integrated security=SSPI;Initial Catalog=AdventureWorks;&amp;quot;;&lt;br /&gt;
            string sqlSelect =&amp;quot;SELECT ContactID, FirstName, LastName FROM Person.Contact&amp;quot;;&lt;br /&gt;
            SqlDataAdapter da = new SqlDataAdapter(sqlSelect, sqlConnectString);&lt;br /&gt;
            DataTable dt = new DataTable();&lt;br /&gt;
            da.Fill(dt);&lt;br /&gt;
            DataRow[] dra = new DataRow[dt.Rows.Count];&lt;br /&gt;
            dt.Rows.CopyTo(dra, 0);&lt;br /&gt;
            Console.WriteLine(&amp;quot;FirstName = {0}&amp;quot;, dra[2][1]);&lt;br /&gt;
        }&lt;br /&gt;
    }&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Accessing Data Values in a DataRow Array in a generic way by index==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;using System;&lt;br /&gt;
using System.Data;&lt;br /&gt;
using System.Data.SqlClient;&lt;br /&gt;
    class Program&lt;br /&gt;
    {&lt;br /&gt;
        static void Main(string[] args)&lt;br /&gt;
        {&lt;br /&gt;
            string sqlConnectString = &amp;quot;Data Source=(local);Integrated security=SSPI;Initial Catalog=AdventureWorks;&amp;quot;;&lt;br /&gt;
            string sqlSelect =&amp;quot;SELECT ContactID, FirstName, LastName FROM Person.Contact&amp;quot;;&lt;br /&gt;
            SqlDataAdapter da = new SqlDataAdapter(sqlSelect, sqlConnectString);&lt;br /&gt;
            DataTable dt = new DataTable();&lt;br /&gt;
            da.Fill(dt);&lt;br /&gt;
            DataRow[] dra = new DataRow[dt.Rows.Count];&lt;br /&gt;
            dt.Rows.CopyTo(dra, 0);&lt;br /&gt;
            Console.WriteLine(&amp;quot;FirstName = {0}&amp;quot;, dra[2].Field&amp;lt;string&amp;gt;(1));&lt;br /&gt;
        }&lt;br /&gt;
    }&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Accessing Data Values in a DataRow Array in a generic way by name==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;using System;&lt;br /&gt;
using System.Data;&lt;br /&gt;
using System.Data.SqlClient;&lt;br /&gt;
    class Program&lt;br /&gt;
    {&lt;br /&gt;
        static void Main(string[] args)&lt;br /&gt;
        {&lt;br /&gt;
            string sqlConnectString = &amp;quot;Data Source=(local);Integrated security=SSPI;Initial Catalog=AdventureWorks;&amp;quot;;&lt;br /&gt;
            string sqlSelect =&amp;quot;SELECT ContactID, FirstName, LastName FROM Person.Contact&amp;quot;;&lt;br /&gt;
            SqlDataAdapter da = new SqlDataAdapter(sqlSelect, sqlConnectString);&lt;br /&gt;
            DataTable dt = new DataTable();&lt;br /&gt;
            da.Fill(dt);&lt;br /&gt;
            DataRow[] dra = new DataRow[dt.Rows.Count];&lt;br /&gt;
            dt.Rows.CopyTo(dra, 0);&lt;br /&gt;
            Console.WriteLine(&amp;quot;FirstName = {0}&amp;quot;,dra[2].Field&amp;lt;string&amp;gt;(&amp;quot;FirstName&amp;quot;));&lt;br /&gt;
            Console.WriteLine(&amp;quot;FirstName = {0}&amp;quot;,dra[2].Field&amp;lt;string&amp;gt;(&amp;quot;FirstName&amp;quot;, DataRowVersion.Default));&lt;br /&gt;
        }&lt;br /&gt;
    }&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Create and fill the DataRow array==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;using System;&lt;br /&gt;
using System.Data;&lt;br /&gt;
using System.Data.SqlClient;&lt;br /&gt;
    class Program&lt;br /&gt;
    {&lt;br /&gt;
        static void Main(string[] args)&lt;br /&gt;
        {&lt;br /&gt;
            string sqlConnectString = &amp;quot;Data Source=(local);Integrated security=SSPI;Initial Catalog=AdventureWorks;&amp;quot;;&lt;br /&gt;
            string sqlSelect = &amp;quot;SELECT ContactID, FirstName, LastName FROM Person.Contact&amp;quot;;&lt;br /&gt;
            SqlDataAdapter da = new SqlDataAdapter(sqlSelect, sqlConnectString);&lt;br /&gt;
            &lt;br /&gt;
            DataTable dt1 = new DataTable();&lt;br /&gt;
            da.Fill(dt1);&lt;br /&gt;
            DataRow[] dra = new DataRow[dt1.Rows.Count];&lt;br /&gt;
            dt1.Rows.CopyTo(dra, 0);&lt;br /&gt;
            for (int i = 0; i &amp;lt; dra.Length; i++){&lt;br /&gt;
                Console.WriteLine(&lt;br /&gt;
                    &amp;quot;ContactID = {0}\tFirstName = {1}\tLastName = {2}&amp;quot;,&lt;br /&gt;
                    dra[i].Field&amp;lt;int&amp;gt;(&amp;quot;ContactID&amp;quot;), dra[i].Field&amp;lt;string&amp;gt;(&amp;quot;FirstName&amp;quot;),&lt;br /&gt;
                    dra[i].Field&amp;lt;string&amp;gt;(&amp;quot;LastName&amp;quot;));&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    }&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==DataRowState manipulation==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;using System;&lt;br /&gt;
using System.Collections.Generic;&lt;br /&gt;
using System.Text;&lt;br /&gt;
using System.Data;&lt;br /&gt;
using System.IO;&lt;br /&gt;
using System.Runtime.Serialization.Formatters.Binary;&lt;br /&gt;
  class Program&lt;br /&gt;
  {&lt;br /&gt;
    static void Main(string[] args)&lt;br /&gt;
    {&lt;br /&gt;
      DataTable temp = new DataTable(&amp;quot;Temp&amp;quot;);&lt;br /&gt;
      temp.Columns.Add(new DataColumn(&amp;quot;TempColumn&amp;quot;, typeof(int)));&lt;br /&gt;
      DataRow row = temp.NewRow();           &lt;br /&gt;
      Console.WriteLine(&amp;quot;After calling NewRow(): {0}&amp;quot;, row.RowState);&lt;br /&gt;
      temp.Rows.Add(row);&lt;br /&gt;
      Console.WriteLine(&amp;quot;After calling Rows.Add(): {0}&amp;quot;, row.RowState);&lt;br /&gt;
      row[&amp;quot;TempColumn&amp;quot;] = 10;&lt;br /&gt;
      Console.WriteLine(&amp;quot;After first assignment: {0}&amp;quot;, row.RowState);&lt;br /&gt;
      temp.AcceptChanges();&lt;br /&gt;
      Console.WriteLine(&amp;quot;After calling AcceptChanges: {0}&amp;quot;, row.RowState);&lt;br /&gt;
      row[&amp;quot;TempColumn&amp;quot;] = 11;&lt;br /&gt;
      Console.WriteLine(&amp;quot;After first assignment: {0}&amp;quot;, row.RowState);&lt;br /&gt;
      temp.Rows[0].Delete();&lt;br /&gt;
      Console.WriteLine(&amp;quot;After calling Delete: {0}&amp;quot;, row.RowState);&lt;br /&gt;
    }&lt;br /&gt;
  }&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==DataRow Update==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;using System;&lt;br /&gt;
using System.Drawing;&lt;br /&gt;
using System.Collections;&lt;br /&gt;
using System.ruponentModel;&lt;br /&gt;
using System.Windows.Forms;&lt;br /&gt;
using System.Data;&lt;br /&gt;
using System.Data.rumon;&lt;br /&gt;
public class DataRowUpdateState : System.Windows.Forms.Form&lt;br /&gt;
{&lt;br /&gt;
  private System.Windows.Forms.DataGrid dataGrid1;&lt;br /&gt;
  private System.ruponentModel.Container components = null;&lt;br /&gt;
  public DataRowUpdateState()&lt;br /&gt;
  {&lt;br /&gt;
    InitializeComponent();&lt;br /&gt;
    CreateCustomersTable();&lt;br /&gt;
  }&lt;br /&gt;
  protected override void Dispose( bool disposing )&lt;br /&gt;
  {&lt;br /&gt;
    if( disposing )&lt;br /&gt;
    {&lt;br /&gt;
      if (components != null) &lt;br /&gt;
      {&lt;br /&gt;
        components.Dispose();&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
    base.Dispose( disposing );&lt;br /&gt;
  }&lt;br /&gt;
  private void InitializeComponent()&lt;br /&gt;
  {&lt;br /&gt;
    this.dataGrid1 = new System.Windows.Forms.DataGrid();&lt;br /&gt;
    ((System.ruponentModel.ISupportInitialize)(this.dataGrid1)).BeginInit();&lt;br /&gt;
    this.SuspendLayout();&lt;br /&gt;
    // &lt;br /&gt;
    // dataGrid1&lt;br /&gt;
    // &lt;br /&gt;
    this.dataGrid1.DataMember = &amp;quot;&amp;quot;;&lt;br /&gt;
    this.dataGrid1.Location = new System.Drawing.Point(8, 8);&lt;br /&gt;
    this.dataGrid1.Name = &amp;quot;dataGrid1&amp;quot;;&lt;br /&gt;
    this.dataGrid1.Size = new System.Drawing.Size(416, 296);&lt;br /&gt;
    this.dataGrid1.TabIndex = 0;&lt;br /&gt;
    // &lt;br /&gt;
    // DataRowUpdateState&lt;br /&gt;
    // &lt;br /&gt;
    this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);&lt;br /&gt;
    this.ClientSize = new System.Drawing.Size(432, 309);&lt;br /&gt;
    this.Controls.AddRange(new System.Windows.Forms.Control[] {&lt;br /&gt;
                                    this.dataGrid1});&lt;br /&gt;
    this.Name = &amp;quot;DataRowUpdateState&amp;quot;;&lt;br /&gt;
    this.Text = &amp;quot;DataRowUpdateState&amp;quot;;&lt;br /&gt;
    ((System.ruponentModel.ISupportInitialize)(this.dataGrid1)).EndInit();&lt;br /&gt;
    this.ResumeLayout(false);&lt;br /&gt;
  }&lt;br /&gt;
  [STAThread]&lt;br /&gt;
  static void Main() &lt;br /&gt;
  {&lt;br /&gt;
    Application.Run(new DataRowUpdateState());&lt;br /&gt;
  }&lt;br /&gt;
  private void CreateCustomersTable()&lt;br /&gt;
  {&lt;br /&gt;
    System.Data.DataTable custTable = new DataTable(&amp;quot;Customers&amp;quot;);&lt;br /&gt;
    DataColumn dtColumn;&lt;br /&gt;
    &lt;br /&gt;
    dtColumn = new DataColumn();&lt;br /&gt;
    dtColumn.DataType = System.Type.GetType(&amp;quot;System.Int32&amp;quot;);&lt;br /&gt;
    dtColumn.ColumnName = &amp;quot;id&amp;quot;;&lt;br /&gt;
    dtColumn.Caption = &amp;quot;Cust ID&amp;quot;;&lt;br /&gt;
    dtColumn.ReadOnly = true;&lt;br /&gt;
    dtColumn.Unique = true;&lt;br /&gt;
    custTable.Columns.Add(dtColumn);&lt;br /&gt;
    dtColumn = new DataColumn();&lt;br /&gt;
    dtColumn.DataType = System.Type.GetType(&amp;quot;System.String&amp;quot;);&lt;br /&gt;
    dtColumn.ColumnName = &amp;quot;Name&amp;quot;;&lt;br /&gt;
    dtColumn.Caption = &amp;quot;Cust Name&amp;quot;;&lt;br /&gt;
    dtColumn.AutoIncrement = false;&lt;br /&gt;
    dtColumn.ReadOnly = false;&lt;br /&gt;
    dtColumn.Unique = false;&lt;br /&gt;
    custTable.Columns.Add(dtColumn);&lt;br /&gt;
    dtColumn = new DataColumn();&lt;br /&gt;
    dtColumn.DataType = System.Type.GetType(&amp;quot;System.String&amp;quot;);&lt;br /&gt;
    dtColumn.ColumnName = &amp;quot;Address&amp;quot;;&lt;br /&gt;
    dtColumn.Caption = &amp;quot;Address&amp;quot;;&lt;br /&gt;
    dtColumn.ReadOnly = false;&lt;br /&gt;
    dtColumn.Unique = false;&lt;br /&gt;
    // Add Address column to the table.&lt;br /&gt;
    custTable.Columns.Add(dtColumn);&lt;br /&gt;
    DataColumn[] PrimaryKeyColumns = new DataColumn[1];&lt;br /&gt;
    PrimaryKeyColumns[0] = custTable.Columns[&amp;quot;id&amp;quot;];&lt;br /&gt;
    custTable.PrimaryKey = PrimaryKeyColumns;&lt;br /&gt;
    DataSet ds = new DataSet(&amp;quot;Customers&amp;quot;);&lt;br /&gt;
    ds.Tables.Add(custTable);&lt;br /&gt;
    DataRow row1 = custTable.NewRow();&lt;br /&gt;
    row1[&amp;quot;id&amp;quot;] = 1;&lt;br /&gt;
    row1[&amp;quot;Address&amp;quot;] = &amp;quot;USA&amp;quot;;&lt;br /&gt;
    row1[&amp;quot;Name&amp;quot;] = &amp;quot;George&amp;quot;;&lt;br /&gt;
    custTable.Rows.Add(row1);&lt;br /&gt;
        MessageBox.Show(row1.RowState.ToString());&lt;br /&gt;
    row1.RejectChanges();&lt;br /&gt;
    MessageBox.Show(row1.RowState.ToString());&lt;br /&gt;
    row1.Delete();&lt;br /&gt;
    MessageBox.Show(row1.RowState.ToString());&lt;br /&gt;
    &lt;br /&gt;
    dataGrid1.DataSource = ds.DefaultViewManager;      &lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==DataView and DataRowView==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;using System;&lt;br /&gt;
using System.Data;&lt;br /&gt;
using System.Data.SqlClient;&lt;br /&gt;
    class DataViews&lt;br /&gt;
    {&lt;br /&gt;
        static void Main(string[] args)&lt;br /&gt;
        {&lt;br /&gt;
            string connString = @&amp;quot;server = .\sqlexpress;integrated security = true;database = northwind&amp;quot;;&lt;br /&gt;
            string sql = @&amp;quot;select contactname,country from customers&amp;quot;;&lt;br /&gt;
            SqlConnection conn = new SqlConnection(connString);&lt;br /&gt;
            try&lt;br /&gt;
            {&lt;br /&gt;
                SqlDataAdapter da = new SqlDataAdapter();&lt;br /&gt;
                da.SelectCommand = new SqlCommand(sql, conn);&lt;br /&gt;
                DataSet ds = new DataSet();&lt;br /&gt;
                da.Fill(ds, &amp;quot;customers&amp;quot;);&lt;br /&gt;
                DataTable dt = ds.Tables[&amp;quot;customers&amp;quot;];&lt;br /&gt;
                DataView dv = new DataView(dt,&amp;quot;country = &amp;quot;Germany&amp;quot;&amp;quot;,&amp;quot;country&amp;quot;,DataViewRowState.CurrentRows);&lt;br /&gt;
                foreach (DataRowView drv in dv)&lt;br /&gt;
                {&lt;br /&gt;
                    for (int i = 0; i &amp;lt; dv.Table.Columns.Count; i++)&lt;br /&gt;
                        Console.Write(drv[i] + &amp;quot;\t&amp;quot;);&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
            catch (Exception e)&lt;br /&gt;
            {&lt;br /&gt;
                Console.WriteLine(&amp;quot;Error: &amp;quot; + e);&lt;br /&gt;
            }&lt;br /&gt;
            finally&lt;br /&gt;
            {&lt;br /&gt;
                conn.Close();&lt;br /&gt;
            } Console.ReadLine();&lt;br /&gt;
        }&lt;br /&gt;
    }&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Filling a DataTable from the DataRow array using CopyToDataTable()==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;using System;&lt;br /&gt;
using System.Data;&lt;br /&gt;
using System.Data.SqlClient;&lt;br /&gt;
    class Program&lt;br /&gt;
    {&lt;br /&gt;
        static void Main(string[] args)&lt;br /&gt;
        {&lt;br /&gt;
            string sqlConnectString = &amp;quot;Data Source=(local);Integrated security=SSPI;Initial Catalog=AdventureWorks;&amp;quot;;&lt;br /&gt;
            string sqlSelect = &amp;quot;SELECT ContactID, FirstName, LastName FROM Person.Contact&amp;quot;;&lt;br /&gt;
            SqlDataAdapter da = new SqlDataAdapter(sqlSelect, sqlConnectString);&lt;br /&gt;
            &lt;br /&gt;
            DataTable dt1 = new DataTable();&lt;br /&gt;
            da.Fill(dt1);&lt;br /&gt;
            DataRow[] dra = new DataRow[dt1.Rows.Count];&lt;br /&gt;
            dt1.Rows.CopyTo(dra, 0);&lt;br /&gt;
            for (int i = 0; i &amp;lt; dra.Length; i++){&lt;br /&gt;
                Console.WriteLine(&lt;br /&gt;
                    &amp;quot;ContactID = {0}\tFirstName = {1}\tLastName = {2}&amp;quot;,&lt;br /&gt;
                    dra[i].Field&amp;lt;int&amp;gt;(&amp;quot;ContactID&amp;quot;), dra[i].Field&amp;lt;string&amp;gt;(&amp;quot;FirstName&amp;quot;),&lt;br /&gt;
                    dra[i].Field&amp;lt;string&amp;gt;(&amp;quot;LastName&amp;quot;));&lt;br /&gt;
            }&lt;br /&gt;
            DataTable dt2 = dra.CopyToDataTable();&lt;br /&gt;
            foreach (DataRow row in dt2.Rows)&lt;br /&gt;
            {&lt;br /&gt;
                Console.WriteLine(&lt;br /&gt;
                    &amp;quot;ContactID = {0}\tFirstName = {1}\tLastName = {2}&amp;quot;,&lt;br /&gt;
                    row[&amp;quot;ContactID&amp;quot;], row[&amp;quot;FirstName&amp;quot;], row[&amp;quot;LastName&amp;quot;]);&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    }&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Filling a DataTable from the DataRow array using CopyToDataTable(DataTable, LoadOption)==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;using System;&lt;br /&gt;
using System.Data;&lt;br /&gt;
using System.Data.SqlClient;&lt;br /&gt;
    class Program&lt;br /&gt;
    {&lt;br /&gt;
        static void Main(string[] args)&lt;br /&gt;
        {&lt;br /&gt;
            string sqlConnectString = &amp;quot;Data Source=(local);Integrated security=SSPI;Initial Catalog=AdventureWorks;&amp;quot;;&lt;br /&gt;
            string sqlSelect = &amp;quot;SELECT ContactID, FirstName, LastName FROM Person.Contact&amp;quot;;&lt;br /&gt;
            SqlDataAdapter da = new SqlDataAdapter(sqlSelect, sqlConnectString);&lt;br /&gt;
            &lt;br /&gt;
            DataTable dt1 = new DataTable();&lt;br /&gt;
            da.Fill(dt1);&lt;br /&gt;
            DataRow[] dra = new DataRow[dt1.Rows.Count];&lt;br /&gt;
            dt1.Rows.CopyTo(dra, 0);&lt;br /&gt;
            for (int i = 0; i &amp;lt; dra.Length; i++){&lt;br /&gt;
                Console.WriteLine(&lt;br /&gt;
                    &amp;quot;ContactID = {0}\tFirstName = {1}\tLastName = {2}&amp;quot;,&lt;br /&gt;
                    dra[i].Field&amp;lt;int&amp;gt;(&amp;quot;ContactID&amp;quot;), dra[i].Field&amp;lt;string&amp;gt;(&amp;quot;FirstName&amp;quot;),&lt;br /&gt;
                    dra[i].Field&amp;lt;string&amp;gt;(&amp;quot;LastName&amp;quot;));&lt;br /&gt;
            }&lt;br /&gt;
            DataTable dt2 = dra.CopyToDataTable();&lt;br /&gt;
            foreach (DataRow row in dt2.Rows)&lt;br /&gt;
            {&lt;br /&gt;
                Console.WriteLine(&lt;br /&gt;
                    &amp;quot;ContactID = {0}\tFirstName = {1}\tLastName = {2}&amp;quot;,&lt;br /&gt;
                    row[&amp;quot;ContactID&amp;quot;], row[&amp;quot;FirstName&amp;quot;], row[&amp;quot;LastName&amp;quot;]);&lt;br /&gt;
            }&lt;br /&gt;
            DataTable dt3 = dt1.Clone();&lt;br /&gt;
            dra.CopyToDataTable(dt3, LoadOption.Upsert);&lt;br /&gt;
            foreach (DataRow row in dt3.Rows)&lt;br /&gt;
            {&lt;br /&gt;
                Console.WriteLine(&amp;quot;ContactID = {0}\tFirstName = {1}\tLastName = {2}&amp;quot;,row[&amp;quot;ContactID&amp;quot;], row[&amp;quot;FirstName&amp;quot;], row[&amp;quot;LastName&amp;quot;]);&lt;br /&gt;
            }            &lt;br /&gt;
        }&lt;br /&gt;
    }&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==For loop over DataRow array==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;using System;&lt;br /&gt;
using System.Data;&lt;br /&gt;
using System.Data.SqlClient;&lt;br /&gt;
    class Program&lt;br /&gt;
    {&lt;br /&gt;
        static void Main(string[] args)&lt;br /&gt;
        {&lt;br /&gt;
            string sqlConnectString = &amp;quot;Data Source=(local);Integrated security=SSPI;Initial Catalog=AdventureWorks;&amp;quot;;&lt;br /&gt;
            string sqlSelect = &amp;quot;SELECT ContactID, FirstName, LastName FROM Person.Contact&amp;quot;;&lt;br /&gt;
            SqlDataAdapter da = new SqlDataAdapter(sqlSelect, sqlConnectString);&lt;br /&gt;
            &lt;br /&gt;
            DataTable dt1 = new DataTable();&lt;br /&gt;
            da.Fill(dt1);&lt;br /&gt;
            DataRow[] dra = new DataRow[dt1.Rows.Count];&lt;br /&gt;
            dt1.Rows.CopyTo(dra, 0);&lt;br /&gt;
            for (int i = 0; i &amp;lt; dra.Length; i++){&lt;br /&gt;
                Console.WriteLine(&lt;br /&gt;
                    &amp;quot;ContactID = {0}\tFirstName = {1}\tLastName = {2}&amp;quot;,&lt;br /&gt;
                    dra[i].Field&amp;lt;int&amp;gt;(&amp;quot;ContactID&amp;quot;), dra[i].Field&amp;lt;string&amp;gt;(&amp;quot;FirstName&amp;quot;),&lt;br /&gt;
                    dra[i].Field&amp;lt;string&amp;gt;(&amp;quot;LastName&amp;quot;));&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    }&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Get column value in a row==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;using System;&lt;br /&gt;
using System.Data;&lt;br /&gt;
using System.Data.SqlClient;&lt;br /&gt;
    class Program&lt;br /&gt;
    {&lt;br /&gt;
        static void Main(string[] args)&lt;br /&gt;
        {&lt;br /&gt;
            string sqlConnectString = &amp;quot;Data Source=(local);Integrated security=SSPI;Initial Catalog=AdventureWorks;&amp;quot;;&lt;br /&gt;
            string sqlSelect = &amp;quot;SELECT ContactID, FirstName, LastName FROM Person.Contact&amp;quot;;&lt;br /&gt;
            SqlDataAdapter da = new SqlDataAdapter(sqlSelect, sqlConnectString);&lt;br /&gt;
            DataTable dt = new DataTable( );&lt;br /&gt;
            da.Fill(dt);&lt;br /&gt;
            for (int i = 0; i &amp;lt; 5; i++)&lt;br /&gt;
            {&lt;br /&gt;
                DataRow row = dt.Rows[i];&lt;br /&gt;
                Console.WriteLine(i);&lt;br /&gt;
                Console.WriteLine(row[0]);&lt;br /&gt;
                Console.WriteLine(row[&amp;quot;FirstName&amp;quot;]);&lt;br /&gt;
                Console.WriteLine(row[2, DataRowVersion.Default]);&lt;br /&gt;
            }&lt;br /&gt;
&lt;br /&gt;
        }&lt;br /&gt;
    }&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Get first index in a row==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;using System;&lt;br /&gt;
using System.Data;&lt;br /&gt;
using System.Data.SqlClient;&lt;br /&gt;
    class Program&lt;br /&gt;
    {&lt;br /&gt;
        static void Main(string[] args)&lt;br /&gt;
        {&lt;br /&gt;
            string sqlConnectString = &amp;quot;Data Source=(local);Integrated security=SSPI;Initial Catalog=AdventureWorks;&amp;quot;;&lt;br /&gt;
            string sqlSelect = &amp;quot;SELECT ContactID, FirstName, LastName FROM Person.Contact&amp;quot;;&lt;br /&gt;
            SqlDataAdapter da = new SqlDataAdapter(sqlSelect, sqlConnectString);&lt;br /&gt;
            DataTable dt = new DataTable( );&lt;br /&gt;
            da.Fill(dt);&lt;br /&gt;
            for (int i = 0; i &amp;lt; 5; i++)&lt;br /&gt;
            {&lt;br /&gt;
                DataRow row = dt.Rows[i];&lt;br /&gt;
                Console.WriteLine(i);&lt;br /&gt;
                Console.WriteLine(row[0]);&lt;br /&gt;
                Console.WriteLine(row[&amp;quot;FirstName&amp;quot;]);&lt;br /&gt;
                Console.WriteLine(row[2, DataRowVersion.Default]);&lt;br /&gt;
            }&lt;br /&gt;
&lt;br /&gt;
        }&lt;br /&gt;
    }&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Get value from a row with default value==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;using System;&lt;br /&gt;
using System.Data;&lt;br /&gt;
using System.Data.SqlClient;&lt;br /&gt;
    class Program&lt;br /&gt;
    {&lt;br /&gt;
        static void Main(string[] args)&lt;br /&gt;
        {&lt;br /&gt;
            string sqlConnectString = &amp;quot;Data Source=(local);Integrated security=SSPI;Initial Catalog=AdventureWorks;&amp;quot;;&lt;br /&gt;
            string sqlSelect = &amp;quot;SELECT ContactID, FirstName, LastName FROM Person.Contact&amp;quot;;&lt;br /&gt;
            SqlDataAdapter da = new SqlDataAdapter(sqlSelect, sqlConnectString);&lt;br /&gt;
            DataTable dt = new DataTable( );&lt;br /&gt;
            da.Fill(dt);&lt;br /&gt;
            for (int i = 0; i &amp;lt; 5; i++)&lt;br /&gt;
            {&lt;br /&gt;
                DataRow row = dt.Rows[i];&lt;br /&gt;
                Console.WriteLine(i);&lt;br /&gt;
                Console.WriteLine(row[0]);&lt;br /&gt;
                Console.WriteLine(row[&amp;quot;FirstName&amp;quot;]);&lt;br /&gt;
                Console.WriteLine(row[2, DataRowVersion.Default]);&lt;br /&gt;
            }&lt;br /&gt;
&lt;br /&gt;
        }&lt;br /&gt;
    }&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Using foreach statement with DataRow in DataTable==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;using System;&lt;br /&gt;
using System.Data;&lt;br /&gt;
using System.Data.SqlClient;&lt;br /&gt;
    class Program&lt;br /&gt;
    {&lt;br /&gt;
        static void Main(string[] args)&lt;br /&gt;
        {&lt;br /&gt;
            string sqlConnectString = &amp;quot;Data Source=(local);Integrated security=SSPI;Initial Catalog=AdventureWorks;&amp;quot;;&lt;br /&gt;
            string sqlSelect = &amp;quot;SELECT ContactID, FirstName, LastName FROM Person.Contact&amp;quot;;&lt;br /&gt;
            SqlDataAdapter da = new SqlDataAdapter(sqlSelect, sqlConnectString);&lt;br /&gt;
            DataTable dt = new DataTable( );&lt;br /&gt;
            da.Fill(dt);&lt;br /&gt;
            int j = 0;&lt;br /&gt;
            foreach (DataRow row in dt.Rows)&lt;br /&gt;
            {&lt;br /&gt;
                j++;&lt;br /&gt;
                Console.WriteLine(&amp;quot;Row = {0}\tContactID = {1}\tFirstName = {2}\tLastName = {3}&amp;quot;, j, row[0], row[&amp;quot;FirstName&amp;quot;],row[&amp;quot;LastName&amp;quot;, DataRowVersion.Default]);&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    }&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>