興味深い質問があると思います。同じ命名規則に従うフォルダーを C:\ で検索するアプリケーションを作成しています。フォルダが見つかったら、アプリケーションはフォルダ内のデータベースに入り、1 ビットのデータを取得する必要があります。そのデータは、リスト ボックスまたはドロップダウンに追加する必要があります。以下は私がこれまでに持っているもので、1つのフォルダーを適切に取得します....しかし、同じ命名規則を持つすべてのフォルダーではありません。私はそれが
profselect.Text = reader[0].ToString();
行がわかりません。
目標は、Rameses-100、Rameses-101 などの名前の 4 つの異なるフォルダーがあることです。各フォルダーには、独自の Ramdata.mdb が含まれています。その MDB には、profselect ドロップダウン ボックスにリストしたい名前があります。ユーザーは、ボックスにリストされた名前を使用して、選択したデータセットに切り替えることができます。現在、これを実行すると、フォルダー ramdata info の 1 つがボックスに入れられます。1つ以上持っていたいです。
string directory = @"C:\";
string[] folders = Directory.GetDirectories(directory, "Rameses-*");
foreach (string foldername in folders)
{
var myDataTable = new System.Data.DataTable();
using (var conection = new System.Data.OleDb.OleDbConnection("Provider=Microsoft.JET.OLEDB.4.0;" + "data source="+foldername+"\\Program\\Ramdata.mdb;Jet OLEDB:Database Password=****"))
{
conection.Open();
var query = "Select u_company From t_user";
var command = new System.Data.OleDb.OleDbCommand(query, conection);
var reader = command.ExecuteReader();
while (reader.Read())
profselect.Text = reader[0].ToString();
conection.Close();
}