zoukankan      html  css  js  c++  java
  • 对一些对象进行方法扩展

    下面对一个DataTable添加一个扩展方法:

    第一步:

             新建一个CS文件,添加如下代码(添加了this表示是对DataTable的扩展):

          

    1 public static void Extend(this DataTable dt, DataRow dr)
    2         {
    3             dt.Rows.Add(dr);
    4         }

             这个时候编译会报错说扩展方法必须在非泛型的静态类中定义。

    第二步:将类改成静态类

          1 public static class TableExtend 

    第三步:调用(在调用的地方加入命名空间,这里不可以自动完成添加,都手动添加)

     1 using System;
     2 using System.Collections.Generic;
     3 using System.Linq;
     4 using System.Text;
     5 using System.Data;
     6 using TabelExtend;
     7 
     8 namespace ExtendTest
     9 {
    10     class Program
    11     {
    12         static void Main(string[] args)
    13         {
    14             DataTable dt = new DataTable();
    15             dt.Columns.Add("ID", typeof(string));
    16             dt.Columns.Add("Name", typeof(string));
    17             dt.Columns.Add("Age", typeof(string));
    18             dt.Columns.Add("Salary", typeof(string));
    19             dt.Columns.Add("Group", typeof(string));
    20 
    21            
    22         }
    23         
    24         static void Test(DataTable dt)
    25         {
    26             DataRow dr1 = dt.NewRow();
    27             dr1[0] = "1";
    28             dr1[1] = "2";
    29             dr1[2] = "3";
    30             dr1[3] = "4";
    31             dr1[4] = "5";
    32             dt.MapRoute(dr1);
    33             
    34         }       
    35     }
    36       
    37    
    38 }
  • 相关阅读:
    linux API 获得文件属性
    Linux 服务端设计
    Linux C++ 使用LuaBind嵌入lua脚本
    Linux 编译安装Boost (转)
    Navicat for My SQL 查看中文乱码问题
    fastbuild联编ue4 shader的使用
    fastbuild进行ue4 shader连编
    maya 插件学习之pythonCharm和Qt环境搭建
    ue4 头发渲染
    ue4 新渲染管线整理
  • 原文地址:https://www.cnblogs.com/lihongchen/p/3625196.html
Copyright © 2011-2022 走看看