zoukankan      html  css  js  c++  java
  • 反射点滴Common


    构造函数加载类集

    public Common()
      {
       SampleAssembly = Assembly.Load("NHClass");          //根据程序集名称得到相应程序集
      }

    简单方法举例

    /// <summary>
      /// 用于存储信息
      /// </summary>
      /// <param name="ht">基本信息列表</param>
      /// <param name="ClassName">完整的类名(包括命名空间和类名)</param>
      /// <returns>新增记录的ID</returns>
      #region 用于存储信息
      public int Save(Hashtable ht,string ClassName)
      {
       int returnvalue = -1;         //返回值,新增记录的ID 
       try
       {
        Type Class = SampleAssembly.GetType(ClassName);     //根据类名得到相应的类
        EntityObject obj = (EntityObject)Activator.CreateInstance(Class);  //得到相应类的实例

        myPropertyInfo = Class.GetProperties(System.Reflection.BindingFlags.Public|System.Reflection.BindingFlags.Instance);      //由反射得到相应类的属性
        foreach(System.Reflection.PropertyInfo pi in myPropertyInfo)    //对传入的数据和类的属性相比较和赋值
        {
         if(ht.Contains(pi.Name))
         {pi.SetValue(obj,ht[pi.Name],null);}
        }

        obj.Save();           //执行类实例的save方法
       }
       catch(PlException ex)
       {
        if(ex.ErrorType == ErrorTypes.NotUnique)
        {throw new Exception("主键冲突!");}
        else{throw new Exception(ex.Message);}    //返回错误信息
       }
       return returnvalue;
      }
      #endregion

  • 相关阅读:
    Java学习日记Ⅰ
    docker 安装redis
    maven 打包 把第三方包也打进去
    wiki 配置数据源 编码要是utf8 不能是utf8mb4
    SCFT用公钥登录
    配置tomcat重启脚本
    tomcat
    centos7 搭建rabbitmq服务 3.7.15
    安装openoffice
    tomcat 日期切分
  • 原文地址:https://www.cnblogs.com/xh831213/p/326567.html
Copyright © 2011-2022 走看看