// DbCommand is being prepared
var cmd = cn.CreateCommand(" SELECT field1, field2 " +
" FROM table1 WHERE field1<>@param1;",
new { param1 = 0});
// Records are being read and converted to dictionary by linq...
var dic = connection.ExecuteReader(cmd).ToDictionary(
x => x["field1"],
x => x["field2"]
);