可以使用引用参数。它将通过引用传递您的列表,并允许在调用例程中对其进行更改。
private void Execute<T>(string strSql, ref List<T> list)
{
using (OracleConnection conn = new OracleConnection(cnnStr))
{
using (OracleCommand objCommand = new OracleCommand(strSql, conn))
{
objCommand.CommandType = CommandType.Text;
DataTable dt = new DataTable();
OracleDataAdapter adp = new OracleDataAdapter(objCommand);
conn.Open();
adp.Fill(dt);
if (dt != null)
{
GetListType(list)
list = ConvertToList(dt).ToList();
}
}
}
}
或者使用out参数,它需要首先在调用例程中声明
private void Execute<T>(string strSql, List<T> list, out List<T> returnList)
{
using (OracleConnection conn = new OracleConnection(cnnStr))
{
using (OracleCommand objCommand = new OracleCommand(strSql, conn))
{
objCommand.CommandType = CommandType.Text;
DataTable dt = new DataTable();
OracleDataAdapter adp = new OracleDataAdapter(objCommand);
conn.Open();
adp.Fill(dt);
if (dt != null)
{
GetListType(list)
list = ConvertToList(dt).ToList();
}
}
}
returnList = list;
}