Project1.dll文件中定义了类Class_A08R 
namespace Project1
{
   [Serializable]
public class Class_A08R
   {
      public string dEvent;
      public string bill_no;
   }
}
另一项目引用 Project1.dll
public Project1.Class_A08R Class_A08R_obj = new Project1.Class_A08R();
Type t = Class_A08R_obj.GetType();
ProperInfo[] properties_A08R = t.GetProperties();
对象数组properties_A08R始终是0维,没数据
Assembly theAssembly = Assembly.LoadFile(path1); //path1:Project1绝对路径
Type t = theAssembly.GetType("Project1.Class_A08R");
ProperInfo[] properties_A08R = t.GetProperties();
properties_A08R始终是0维而把自定义的类换成Dataset类,Type类 测试,是能返回多维的.怎么回事
ProperInfo[] properties_test = Type.GetType("System.type").GetProperties();

解决方案 »

  1.   

    属性和变量分不清?
    你定义的是变量,对应的是FieldInfo
      

  2.   

    public string sss
    {
        get
    {}
    set
    {}
    }
    这才是属性
      

  3.   

    public string bill_no;
    这种东西叫 Field , 你应该用 GetFields 来返回.这样才是Property:
    pubilc string bill_no{
    get{return null;}
    }
      

  4.   

    没见 LZ 定义 Property, 只见 Field
      

  5.   

    上面说得对, 面向对象里常说成员变量, 属性, 方法, 构造函数, 析构函数, 分清楚, 把问题整理下, 到底想怎么做。 .net里面的发射是可以取得所有东西的。
      

  6.   

    完成了发现问题后,只是在BAIDU上搜到了GetProperties()一直在死胡同里面混谢谢了