C# DataColumn

来源:互联网 发布:搞笑网络剧排行榜 编辑:程序博客网 时间:2024/05/18 20:11

DataColumn designates columns in DataTables. It specifies the name and type of certain columns in the table. The DataColumn type can be instantiated through the Columns.Add method or through the DataColumn constructor itself. The Columns collection can be looped through.

Example

You can construct a DataTable using DataColumn references and the DataColumn constructor. The example also adds some rows to the DataTable based on the types and count of the columns specified by the DataColumn references.

Additionally:The program uses a foreach-loop on the Columns property to print out the names and types of the columns on the DataTable.

Program that uses DataColumn [C#]using System;using System.Data;class Program{    static void Main()    {//// Construct the DataTable.//DataTable table = GetTable();//// Loop over the column headers in the DataTable.//foreach (DataColumn column in table.Columns){    Console.WriteLine("{0} = {1}", column, column.DataType);}    }    /// <summary>    /// Generates a DataTable with four columns.    /// </summary>    static DataTable GetTable()    {//// Here we create a DataTable and add columns to it.//DataTable table = new DataTable();table.Columns.Add("Dosage", typeof(int));table.Columns.Add("Medication", typeof(string));table.Columns.Add("Patient", typeof(string));//// Add another column to the data table in a different way.//DataColumn column = new DataColumn("Appointment", typeof(DateTime));table.Columns.Add(column);//// Here we add some DataRows.// Note that the row parameters must match the order and types of the columns.//table.Rows.Add(21, "Combivent", "Janet", DateTime.Now);table.Rows.Add(100, "Dilantin", "Melanie", DateTime.Now);return table;    }}OutputDosage = System.Int32Medication = System.StringPatient = System.StringAppointment = System.DateTime
Note

Adding columns to DataTable. The program text shows that you can add DataColumn instances with the Add method on the Columns instance property on the DataTable instance. Internally, this overload of the Add method actually just constructs a new DataColumn in the same way as shown next.

However:This method signature hides some of the complexity from you, which can help simplify certain programs.

DataColumn constructor. The program text demonstrates the "new DataColumn" constructor which receives two parameters. There are other overloaded DataColumn constructors, but you can use the same general pattern when constructing them.

Tip:You can pass an actual DataColumn instance reference to the Add method on the Columns collection.

Foreach loop construct

Foreach loop. The Main method uses a foreach-loop after constructing the DataTable. It accesses the Columns instance property on the DataTable instance and loops over this with a DataColumn iteration variable. The iteration variable is always read-only, but you can access writable data through the reference itself. The loop prints out each column name and then the data type the column stores.

Internals

.NET Framework information

Individual DataColumn references can be accessed by specified by their string names in the indexer on the DataColumnCollection. Internally, these DataColumn references are stored in a Hashtable, and the indexer just uses the Hashtable to look up the references themselves.

Indexer ExamplesHashtable Examples

Abstractions

SQL (Structured Query Language)

The DataTable, DataColumn, and DataRow classes serve as in-memory relational database representations in the .NET Framework. The entire point of relational databases such as SQL Server is to store data in a structured way, but there is a conflict when translating tabular data to in-memory object models and representations.

The DataColumn type is one way you can represent the data in memory without using the database constantly. You can find more details on the DataTable class, which involves the DataColumn and DataRow classes mentioned.

DataTable Examples

Summary

The C# programming language

We looked at the DataColumn class in the C# language and the .NET Framework, found in the System.Data namespace. The DataColumn acts as a template for the in-memory relational database abstraction specified by the DataTable type.

Data
原创粉丝点击