Back to Devexpress

IColumn Interface

corelibraries-devexpress-dot-dataaccess-dot-sql-dot-dataapi.md

latest3.2 KB
Original Source

IColumn Interface

A schema of a column in a ITable.

Namespace : DevExpress.DataAccess.Sql.DataApi

Assembly : DevExpress.DataAccess.v25.2.dll

NuGet Package : DevExpress.DataAccess

Declaration

csharp
public interface IColumn
vb
Public Interface IColumn

The following members return IColumn objects:

Remarks

For each table, you can access its columns using the ITable.Columns property. This property returns the object implementing the IColumn interface. To obtain the column name and type, use the IColumn.Name and IColumn.Type properties, respectively.

Example

The following example illustrates how to use the SqlDataSource.Result property to extract all data records from an SqlDataSource and pass them to a corresponding DataTable object.

csharp
using DevExpress.DataAccess.Sql;
using DevExpress.DataAccess.Sql.DataApi;
using System;
using System.Data;
using System.Linq;
using System.Windows.Forms;
// ...

private void button1_Click(object sender, EventArgs e) {
    XtraReport1 report = new XtraReport1();
    SqlDataSource ds = report.DataSource as SqlDataSource;

    ds.Fill();
    ITable src = ds.Result["Categories"];
    DataTable dest = new DataTable("Categories");
    foreach (IColumn column in src.Columns)
        dest.Columns.Add(column.Name, column.Type);
    foreach (IRow row in src)
        dest.Rows.Add(row.ToArray());
}
vb
Imports DevExpress.DataAccess.Sql
Imports DevExpress.DataAccess.Sql.DataApi
Imports System
Imports System.Data
Imports System.Linq
Imports System.Windows.Forms
' ...

Private Sub button1_Click(ByVal sender As Object, ByVal e As EventArgs)
    Dim report As New XtraReport1()
    Dim ds As SqlDataSource = TryCast(report.DataSource, SqlDataSource)

    ds.Fill()
    Dim src As ITable = ds.Result("Categories")
    Dim dest As New DataTable("Categories")
    For Each column As IColumn In src.Columns
        dest.Columns.Add(column.Name, column.Type)
    Next column
    For Each row As IRow In src
        dest.Rows.Add(row.ToArray())
    Next row
End Sub

See Also

IColumn Members

DevExpress.DataAccess.Sql.DataApi Namespace