如何将参数传递给存储过程
问题描述:
使用Crystal Report 9和VB.Net如何将参数传递给存储过程
报告正在运行存储过程,我想将数据传递给存储过程。
怎么办?
在VB6中,我确实喜欢这样。
Report.ReportFileName = REPPATH & "\Detail.rpt"
Report.StoredProcParam(0) = Did
Report.StoredProcParam(1) = Deed
Report.Action = 1
如何在vb.net中做到这一点?
答
我认为像下面应该工作:
的setDataSource有这样4个将覆盖所有需要一个IEnumerable像对象作为参数。但是,这已经与CR 13做了VS 2010 ...我希望你会发现一些像CR 9
Dim report As New CrystalReport1
Dim sqla = New SqlDataAdapter()
sqla.SelectCommand.Connection = New SqlConnection(sConnectionString)
sqla.SelectCommand = New SqlCommand("EXEC storedProcName @a, @b, @c")
sqla.SelectCommand.Parameters.Add("@a", paramA)
sqla.SelectCommand.Parameters.Add("@a", paramB)
sqla.SelectCommand.Parameters.Add("@a", paramC)
report.SetDataSource(sqla)
//'If you do not have parameters, you may use :
report.SetDataSource(New SqlDataAdapter("EXEC storedProcName ", sConnectionString))
report.Refresh()
编辑:sqla.SelectCommand.Parameters.Add("@a", paramA)
在CR13版本贬值。代替使用sqla.SelectCommand.Parameters.AddWithValue("@a", paramA)
。