使用Configuration Manager的自定义服务器控件属性编辑器

时间:2013-12-14 19:40:33

标签: c# asp.net custom-controls

我正在尝试在Asp.net中开发自定义服务器控件。该控件具有以下属性。

  1. ConnectionID - 来自Web.Config文件的连接字符串键
  2. 数据源 - 表或SP名称
  3. 列 - 一个ArrayList,由使用该列获得的列组成 以上属性。
  4. 在添加Columns Prorerty之前,一切都很好。它使用自定义集合编辑器进行属性编辑。问题是Columns属性的getter方法总是会出错。

      

    “对象引用未设置为对象的实例。”

    这就是我在Property getter Method中尝试做的事情。

     ArrayList cols = new ArrayList(); 
     DataTable dt = new DataTable();
     SqlDataAdapter sDA = new SqlDataAdapter(this.DataSource, ConfigurationManager.ConnectionStrings[this.ConnectionID].ConnectionString);
    
     sDA.Fill(dt); 
    
     foreach (DataColumn dc in dt.Columns) 
     {
          Column col = new Column();
          col.Name = dc.ColumnName;
          col.Caption = dc.ColumnName;
          cols.Add(col); 
     }
    
    return cols;
    

0 个答案:

没有答案