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        }
  • 相关阅读:
    输入框联想
    SyntaxError: missing ; before statement 错误的解决
    Oracle数据库DECODE函数的使用.
    MySQL ----命令总结!
    个介!
    递归函数
    闭包函数与装饰器
    函数对象
    力扣题
    函数基础
  • 原文地址:https://www.cnblogs.com/xiexiaokui/p/227221.html
Copyright © 2011-2022 走看看