zoukankan      html  css  js  c++  java
  • mapxtreme2004经典代码之二:TableInfo

    The example code below convers the concept of System.Reflection.

    Also it is a Window application, but I have write Console.WriteLine() method in it, so u should run it in the command line like this
    eg: application.exe >info.txt

     1        private void button2_Click(object sender, System.EventArgs e)
     2        {
     3            Table table = MapInfo.Engine.Session.Current.Catalog[this.mapControl1.Map.Layers[0].Alias];
     4            
     5            TableInfo ti = table.TableInfo;
     6            Type type = ti.GetType();
     7
     8            PropertyInfo[] api = type.GetProperties();
     9            string s1="";
    10            foreach(PropertyInfo pi in api)
    11            {
    12                s1 += pi.Name +"="+ pi.GetValue(ti,null)+"\r\n";
    13            }
                
    14
    15            Console.WriteLine(s1);
    16            Console.WriteLine();
    17             
    18            s1="";
    19            foreach(PropertyInfo pi in api)
    20            {
    21                s1 += pi.Name +"="+ pi.GetValue(ti,null)+"\r\n";
    22            }

    23            
    24
    25            s1+="\r\n";
    26
    27            FieldInfo[] afi = type.GetFields();
    28            foreach(FieldInfo fi in afi)
    29            {
    30                s1 += fi.Name+"="+fi.GetValue(ti);
    31            }

    32
    33
    34            s1 += "\r\n";
    35            foreach(Column c in ti.Columns)
    36            {
    37                
    38                s1 += "Alias="+c.Alias+"\r\n"+"DataType="+c.DataType+"\r\n"+"Width="+c.Width+"\r\n";                
    39                if(c.DataType == MIDbType.FeatureGeometry)
    40                {
    41                    GeometryColumn gc = (GeometryColumn)c;
    42                    MapInfo.Geometry.CoordSys cs = gc.CoordSys;
    43                    s1 += "MapBasicString="+cs.MapBasicString+"\r\n";
    44                    MapInfo.Geometry.DRect dr = gc.Bounds;
    45                    s1 += "Bounds="+dr+"\r\n";
    46                }

    47
    48            }

    49            
    50            Console.WriteLine(s1);
    51
    52        }
  • 相关阅读:
    Windows API 之 Windows Service
    揭开Socket编程的面纱 (一)
    开发中“错误: 意外地调用了方法或属性访问。” 和 第一行错误 的IE 两个问题( JQ 进行转义字符 , 分页JS 调用 时参数问题。)
    结合MSDN理解windows service 服务安装的三个类。
    VFW基础知识(一些定义性质的。从CSDN中得到的。)
    初次接触WIN FORM,深入事件、委托、方法 ,深入看不到的C#探索。
    C#: +(特性 ) + Attitude C#(类)前面或者(方法)前面 (中括号)定义
    VFW系列教程经典
    依赖注入
    Windows Service:SC 和 InstallUtil 区别
  • 原文地址:https://www.cnblogs.com/xiexiaokui/p/227221.html
Copyright © 2011-2022 走看看