[英]Error while read data from database using DbDataReader
I want to read data from an oracle database and add that data in to a List. 我想从oracle数据库中读取数据并将该数据添加到列表中。 But when I run the application I'm getting the 'Invalid operation. 但是,当我运行该应用程序时,我得到的是“无效操作。 The connection is closed.' 连接已关闭。 error. 错误。
This is my code: 这是我的代码:
public class NewOtherCompanyMapper
{
OtherCompany om;
private Database db;
private DbCommand cmd;
private DbConnection con;
public NewOtherCompanyMapper(OtherCompany om_temp)
{
om = om_temp;
db = DatabaseFactory.CreateDatabase("NDA_generator");
}
public List<OtherCompany> getCompanyDetails()
{
List<OtherCompany> list = new List<OtherCompany>();
OtherCompany oc = new OtherCompany();
try
{
con = db.CreateConnection();
con.Open();
string query = "SELECT * FROM OtherCompanyData";
cmd = db.GetSqlStringCommand(query);
DbDataReader reader = cmd.ExecuteReader();
while (reader.Read())
{
oc = new OtherCompany(reader["RegNumber"].ToString(), reader["ComName"].ToString(), reader["Country"].ToString(), reader["Address"].ToString(), reader["CoreBusi"].ToString());
list.Add(oc);
}
}
catch (Exception ex)
{
throw ex;
}
return list;
}
}
Can you please help me to solve this problem. 您能帮我解决这个问题吗?
Try replacing this 尝试更换它
cmd = db.GetSqlStringCommand(query);
with this: 有了这个:
cmd = con.CreateCommand();
cmd.CommandText = query;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.