【发布时间】:2012-07-10 14:50:26
【问题描述】:
我想从 vb.net 程序中每小时自动执行一次下面的存储过程
非常感谢任何帮助
我编写了如下存储过程。
create procedure dbo.test as
BEGIN
Select * from dbo.testtable
END
该存储过程正在返回巨大的结果,然后导致应用程序加载时出现性能问题。
因此,我不想在每个按钮单击事件上调用相同的结果,而是想每小时调用一次存储过程,并且必须通过使用一些状态管理技术(如Session 或View State)重新使用数据集。
TestAspx.vb 文件 - 在Session 中维护结果
方法1
PrivateSub test()
dim ds as dataset
ds = objtestdata.test() //From here am accessing the datalayer testdata.vb file
Session("Testdata") = ds
End Sub
在下拉控件中加载 Session 数据
方法2
PrivateSub loaddropdown()
dropdowncontrol.DataSource = Session("Testdata")
dropdowncontrol.DataBind()
end sub
Testdata.vb 文件 - 从数据层调用存储过程
Public Function test() As DataSet
Dim ds As New DataSet
Dim cmd As DbCommand
ds.Locale = CultureInfo.InvariantCulture
cmd = db.GetStoredProcCommand("dbo.test")
ds = db.ExecuteDataSet(cmd)
Return ds
End Function
因此,通过使用Session("TestDate"),我可以在多个按钮单击加载中使用此数据集。
我必须如下处理testaspx.vb文件中的返回数据集
我怎么能每小时运行整个过程?
在这方面帮助我。 谢谢,
【问题讨论】:
-
如何在服务中执行每小时存储过程,在该服务中,您可以将每小时数据插入另一个表并在您的 vb 应用程序中使用该表。
-
如果那个存储过程(它是存储的——就像你的数据库中的存储)返回巨大的结果 正如你所说 - 你绝对不想将它存储到视图状态!
标签: .net sql-server vb.net