我使用大规模查询方法编写一个简单的连接查询对Oracle数据库。这是我的代码,通过去掉一些列进一步简化了查询:
dynamic logTable = new DynamicModel("mydatabase", "table1");
var sb = new StringBuilder();
sb.Append("select CONTACT_ID from table1 inner join table2 on table1.ID = table2.ID ");
sb.Append("where table1.ID=:0");
dynamic dbResult = logTable.Query(sb.ToString(), id);
下面的代码给了我一个错误:'object'不包含'CONTACT_ID'的定义
string id = dbResult.CONTACT_ID.ToString();
如果我使用确切的查询并通过sqldeveloper运行它,我将得到预期的结果。如果我尝试在没有连接的情况下通过Massive进行查询,我会得到一个可以使用的对象。
任何想法?
我错了!我期待我的查询只返回一条记录,但忘记了查询返回IEnumerable。解决方案是使用First()或遍历结果。