2011-02-08 2 views
3

私は、MS Accessカラムのカラム記述をC#(カラムの目的を記述するためにユーザがテーブルデザイナで入力したテキスト)を使用して取得しようとしています。誰がこれについてどうやって行くのですか?私はおそらくColumnのExtendedPropertiesがこれを保持すると思ったが、OleDbConnectionを介してDataTableを取得し、列をループすると、ExtendedPropertiesは常に0のカウントを持つ。以下は、ADOXカタログを使用してC#のC#のアクセスデータベースから列の説明を取得するにはどうすればよいですか?

  Catalog cat = new ADOX.CatalogClass(); 
      ADODB.Connection conn = new ADODB.Connection(); 
      conn.Open(_connectionString, null, null, 0); 
      cat.ActiveConnection = conn; 
      ADOX.Table mhs = cat.Tables["MyTableName"]; 
      string test = mhs.Columns["ColumnOfInterest"].Properties["Description"].Value.ToString(); 

答えて

2

で簡単なテストがあり、あなたはVBAで、フィールドプロパティの説明を見ることができます。

catDB.ActiveConnection = "Provider=Microsoft.Jet.OLEDB.4.0;" & _ 
"Data Source=" & CurrentProject.FullName 

Set tbl = catDB.Tables("New") 

Set fld = tbl.Columns("Test") 
Debug.Print fld.Properties("Description") 
関連する問題