ADOX を使用して新しい MS Access データベース テーブルを作成したいと考えています。このページには VB.NET のコードがありますが、明らかに C# では動作しません (コードを「変換」したい場合)。誰かがそれを正しく変換してくれたら、私は感謝します。
VB.NET では次のとおりです。
Dim Cn As ADODB.Connection, Cat As ADOX.Catalog, _
objTable As ADOX.Table
ただし、C# には ADODB.Connection メソッドはありません。
ここに私のコードがあります、私は本当にそれがOKだとは思いません:
string ConnStr = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath("~/App_Data/TempDB.mdb") + ";";
OleDbConnection conn = new OleDbConnection(ConnStr);
ADOX.Catalog Cat = new ADOX.Catalog();
ADOX.Table objTable = new ADOX.Table();
conn.Open();
Cat.ActiveConnection = conn; //Here is the error message "Specified cast is not valid."
objTable.Name = "Table2";
objTable.Columns.Append("ID", DataTypeEnum.adVarChar, 100);
objTable.Keys.Append("PrimaryKey", KeyTypeEnum.adKeyPrimary, "ID", "Table1", "IDColumn");
Cat.Tables.Append(objTable);