をだから私は、最近、次の質問をした:は、固定形式のテキストファイルの読み込み - パート3
Reading A Fixed Format Text File - Part 2
Reading A Fixed Format Text File
私は最終的に以下のコードを使用してアクセスするデータベースを読み取ることができました:
string DATABASE_PROVIDER = "Provider=Microsoft.ACE.OLEDB.12.0";
string CVS Application.StartupPath + ""\\Database.accdb";
string DATA_SOURCE = "Data Source" + CVS;
string connectionString = DATABASE_PROVIDER + DATA_SOURCE;
string TABLE = " FROM STUFF";
string SELECT = "SELECT CODE, NAME, ICON, FUNCTION;
string StringQueryCmd = SELECT + TABLE;
OleDbConnection MyConnection = new OleDbConnection(connectionString);
OleDbCommand Command = OleDbCommand(StringQueryCmd,MyConnection);
OleDbAdapter MyDataAdapter = new OleDbAdapter(Command);
DataSet MyDataSet = new DataSet();
DataTable MyDataTable = new DataTable();
MyConnection.Open();
MyDataAdapter.Fill(MyDataSet,"STUFF");
MyConnection.Close();
次のコードブロックを使用してLINQ to DATASETを利用しようとしています。
var query = (
from order in MyDataTable.AsEnumerable()
where order.Field<int>("CODE") >= 41
select new
{
CODE = order.Field<int>("CODE"),
NAME = order.Field<string>("NAME"),
ICON = order.Field<string>("ICON"),
FUNCTION = order.Field<string>("FUNCTION")
}
);
クエリの結果は返されません。何千もの結果が得られるはずですが、基本的にクエリに間違いがありますか? DataTableからの情報を制限する結果を生成する他の方法はありますか?
"NAME"列と一致し、いくつかの結果しか得られない正規表現をクエリ(または他の解決策)に提供する必要があります。私は正規表現のための能力を、各Nameに対してMatch(ブーリアンステートメント)に使用しようとします。
を試してみてください。あなたが私のオフィスで働いていたら、私はあなたにビールを買うでしょう。 –
@Ramhound:仲間の仲間:) – sll