Heim  >  Artikel  >  Backend-Entwicklung  >  Ausführliche Erläuterung des Beispielcodes zum Generieren von Typtypparametern beim Erstellen einer neuen DataColumn-Klasse in C#

Ausführliche Erläuterung des Beispielcodes zum Generieren von Typtypparametern beim Erstellen einer neuen DataColumn-Klasse in C#

黄舟
黄舟Original
2017-03-13 17:48:332158Durchsuche

Mehrere Konstruktoren der DataColumn-Klasse, die Type-Typ-Parameter erfordern, sind wie folgt:

        //
        // 摘要:
        //     使用指定列名称和数据类型初始化 System.Data.DataColumn 类的新实例。
        //
        // 参数:
        //   columnName:
        //     一个字符串,它表示要创建的列的名称。如果设置为 null 或空字符串 (""),则当添加到列集合中时,将指定一个默认名称。
        //
        //   dataType:
        //     支持的 System.Data.DataColumn.DataType。
        //
        // 异常:
        //   System.ArgumentNullException:
        //     未指定任何 dataType。
        public DataColumn(string columnName, Type dataType);
        //
        // 摘要:
        //     使用指定的名称、数据类型和表达式初始化 System.Data.DataColumn 类的新实例。
        //
        // 参数:
        //   columnName:
        //     一个字符串,它表示要创建的列的名称。如果设置为 null 或空字符串 (""),则当添加到列集合中时,将指定一个默认名称。
        //
        //   dataType:
        //     支持的 System.Data.DataColumn.DataType。
        //
        //   expr:
        //     用于创建该列的表达式。有关更多信息,请参见 System.Data.DataColumn.Expression 属性。
        //
        // 异常:
        //   System.ArgumentNullException:
        //     未指定任何 dataType。
        public DataColumn(string columnName, Type dataType, string expr);
        //
        // 摘要:
        //     使用指定名称、数据类型、表达式和确定列是否为属性的值,初始化 System.Data.DataColumn 类的新实例。
        //
        // 参数:
        //   columnName:
        //     一个字符串,它表示要创建的列的名称。如果设置为 null 或空字符串 (""),则当添加到列集合中时,将指定一个默认名称。
        //
        //   dataType:
        //     支持的 System.Data.DataColumn.DataType。
        //
        //   expr:
        //     用于创建该列的表达式。有关更多信息,请参见 System.Data.DataColumn.Expression 属性。
        //
        //   type:
        //     System.Data.MappingType 值之一。
        //
        // 异常:
        //   System.ArgumentNullException:
        //     未指定任何 dataType。
        public DataColumn(string columnName, Type dataType, string expr, MappingType type);

Mehrere Anweisungen im Zusammenhang mit dem Typ Type in C#

1 typeof
typeof ist ein Operator , typeof (type). Zum Beispiel typeof(bool), typeof(int), typeof(System.Windows.Forms.TextBox)
2, Type.GetType (Typname). Dieser Typname ist vom Typ String und in Anführungszeichen eingeschlossen.
3. Object.GetType(). Mitglieder der Object-Klasse und der C#-Klasse Object verfügen alle über diese Methode.
Die oben genannten drei geben alle System.Type zurück.

Spezifische Anwendungsbeispiele:

        private void Form1_Load(object sender, EventArgs e)
        {
            try
            {
                dt = new DataTable();
                dt.Columns.Add(new DataColumn("one", System.Type.GetType("System.Double"))); 
                //System.Type.GetType(TypeCode.Double.ToString())这种方式不能用
                dt.Columns.Add(new DataColumn("two", System.Type.GetType("System.Double")));
                dt.Columns.Add(new DataColumn("three", typeof(Double)));
                dt.Columns.Add(new DataColumn("four", (1D).GetType()));

                Random rnd = new Random();
                for (int i = 0; i < 10; i++)
                {
                    dt.Rows.Add(new object[] { (Double)rnd.Next(1, 234923745), (Double)rnd.Next(1, 234923745), 
                    (Double)rnd.Next(1, 234923745), (Double)rnd.Next(1, 234923745) });
                }

                dt.DefaultView.Sort = "one ASC,two ASC";

                dataGridView1.DataSource = dt.DefaultView;
            }
            catch (System.Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }

Das obige ist der detaillierte Inhalt vonAusführliche Erläuterung des Beispielcodes zum Generieren von Typtypparametern beim Erstellen einer neuen DataColumn-Klasse in C#. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn