public string GetDataTable(string ProcName, FbParameter[] paralist, ref DataTable dt)
{
lock (this)
{
try
{
this.Open();
FbCommand cmd = this.GetCmd(ProcName, paralist);
cmd.Connection = this.conn;
FbDataAdapter Adapter = new FbDataAdapter(cmd);
dt = new DataTable();
Adapter.Fill(dt);
return "1";
}
catch (Exception ex)
{
return ex.Message;
}
finally
{
if (this.conn.State == ConnectionState.Open)
{
this.conn.Close();
}
}
}
}
上面是我的代码 用的是Firebird 存储过程
我直接在分析器里使用存储过程测试 十分的快 大约有600条数据左右可在ASP.NET代码里 调用存储过程时
就在这一句Adapter.Fill(dt);
填充到DataTable 速度爆慢 简直无法忍受有什么好方法可以解决这样问题吗?
{
lock (this)
{
try
{
this.Open();
FbCommand cmd = this.GetCmd(ProcName, paralist);
cmd.Connection = this.conn;
FbDataAdapter Adapter = new FbDataAdapter(cmd);
dt = new DataTable();
Adapter.Fill(dt);
return "1";
}
catch (Exception ex)
{
return ex.Message;
}
finally
{
if (this.conn.State == ConnectionState.Open)
{
this.conn.Close();
}
}
}
}
上面是我的代码 用的是Firebird 存储过程
我直接在分析器里使用存储过程测试 十分的快 大约有600条数据左右可在ASP.NET代码里 调用存储过程时
就在这一句Adapter.Fill(dt);
填充到DataTable 速度爆慢 简直无法忍受有什么好方法可以解决这样问题吗?
解决方案 »
- 当Application被回收,静态类中的资源会不会同时被回收?
- C# xml移动节点 ...............................................在线等,新手求助
- 在服务器上导出数据库,每次都进行到一半就报错“对象名不存在”“未能准备语句”
- 问个关于url重写的问题
- 一个页面美观问题
- 制作asp.net安装项目时要求对文件夹savefiles设置为aspnet用户完全控制
- 水晶报表中record number的问题
- 求ffmpeg svn版
- 请推荐使用C#-ACCESS2000-ASP.NET的论坛源代码,谢谢。
- 两个关于枚举类的问题
- 无数据显示问题?
- allowDefinition='MachineToApplication' 错误 请教解决方法
dim ds as datasetds=new dataset
ds=Adapter.Fill(ds,"0")
dt=new datatable
dt=ds.tabels("0")有时候程序第一次运行时是很慢
去掉lock(this){}试试
和dataset 填充`似乎没什么区别吧``
去掉了lock(this)
还是一样啊``没什么区别`还是那么慢
我还用FbDataReader试了一下
先查出来`速度很快
但我再填充到datatable 里 又慢死了