|
分類:[VB.NET/VB2005 以降]
環境
VisualStudio2017
vb.net(WinForms) .netframework 4.6.2
DB:postgresql4 + Npgsql 4.1.10 + EnterpriseLibrary.Data 5.0.414
DBに接続してデータを取得する際、Microsoft.Practices.EnterpriseLibrary.DataのIRowMapperで指定しているのですが
DBのテーブルhogeにcolumn1があり
class hogeにcolumn1とcolumn1xがあるとして、column1xは比較用に使うので当初はcolumn1の内容を入れたい場合
SQL="SELECT column1 FROM hoge"
Dim rowMapper As IRowMapper(Of hoge)
rowMapper = MapBuilder(Of hoge).MapAllProperties.
Map(Function(x) x.column1x).ToColumn("column1").
Build()
と個別指定していても
'The column column1x was not found on the IDataRecord being evaluated. This might indicate that the accessor was created with the wrong mappings.'
としてcolumn1xが無い。とエラーを出します。
今までは同様の構文でSQL Serverでは出来ていたので行けると思っていたのですが、
postgresqlでは不可なのでしょうか
もちろん
"SELECT column1, column1 AS column1x"
とすれば通るのですが
何か対策をご存知の方がいらっしゃいましたら
よろしくお願いします
|