我正在使用 .Net 4.5 Framework 开发 Web 应用程序。我正在从 oracle 数据库中的表中填充网格视图。该表很大,有近 73,000 条记录,每条记录有 5 列。加载表的响应时间约为 4 分钟。我目前正在使用 ADO.Net 的连接架构方法进行填充。我想要一种减少响应时间的方法。
检索代码
public DataTable RetrieveManufacturerDetails() {
try {
OpenDBConnection();
objDataTable = new DataTable();
objTrans = objCon.BeginTransaction();
objCommand = new OracleCommand("SP_GET_MANUFACTURER_DETAILS", objCon);
objCommand.CommandType = CommandType.StoredProcedure;
objCommand.Parameters.Add("cManufacturer", OracleType.Cursor).Direction = ParameterDirection.Output;
objCommand.Transaction = objTrans;
objDataAdapter.SelectCommand = objCommand;
objDataAdapter.Fill(objDataTable);
objTrans.Commit();
return objDataTable;
} catch (Exception Ex) {
objTrans.Rollback();
throw Ex;
} finally {
objCommand.Dispose();
objCon.Close();
}
}
存储过程:
create or replace PROCEDURE SP_GET_MANUFACTURER_DETAILS(cManufacturer OUT sys_refcursor )
AS
BEGIN
OPEN cManufacturer
FOR
SELECT MANUFACTURE_CODE AS "Manufcode",
MANUFACTURE_NAME AS "Manufname",
VENDOR_ACCOUNT_GROUP AS "Ktokk",
CITY AS "City",
POST_CODE AS "Postcode"
FROM MATERIAL_MANUFACTURE_INFO ;
END SP_GET_MANUFACTURER_DETAILS;