Maison >développement back-end >Tutoriel C#.Net >Explication détaillée de l'exemple de code pour générer des paramètres de type Type lors de la création d'une nouvelle classe DataColumn en C#

Explication détaillée de l'exemple de code pour générer des paramètres de type Type lors de la création d'une nouvelle classe DataColumn en C#

黄舟
黄舟original
2017-03-13 17:48:332221parcourir

Plusieurs constructeurs de la classe DataColumn qui nécessitent des paramètres de type Type sont les suivants :

        //
        // 摘要:
        //     使用指定列名称和数据类型初始化 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);

Plusieurs instructions liées au type Type en C#

1 typeof
typeof est un. opérateur , typeof (type). Par exemple, typeof(bool), typeof(int), typeof(System.Windows.Forms.TextBox)
2, Type.GetType (nom du type). Ce nom de type est de type chaîne, entre guillemets.
3. Objet.GetType(). Les membres de la Object class et de la classe c# object ont tous cette méthode.
Les trois ci-dessus renvoient tous System.Type.

Exemples d'utilisation spécifiques :

        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);
            }
        }

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn