我不确定我应该在vb.net项目的后台代码中写些什么。我有一个可以过滤网格视图的中继器。当我试图声明标量变量@CompanyID时,我得到了我在本文标题中提到的错误。有人能帮我吗?我试着在许多论坛上寻找答案,但我找不到正确的答案。
dsLetters.SelectCommand = "SELECT DISTINCT LEFT(ProductName, 1) AS [Letter]
FROM Product, CompanyLink, Company
WHERE Product.ProductID = CompanyLink.ProductID
AND CompanyLink.CompanyID = Company.CompanyID
AND Company.CompanyID = @CompanyID"
'declaring scalar variable @CompanyID
dsLetters.SelectParameters.Clear()
Dim cp As ControlParameter = New ControlParameter
cp.ControlID = "rptLetters"
cp.DefaultValue = "-1"
cp.Name = "CompanyID"
cp.PropertyName = "SelectedValue"
cp.Type = TypeCode.Decimal
dsLetters.SelectParameters.Add(cp)
发布于 2011-11-01 04:46:01
我认为问题在于中继器没有选择值的概念;它们所做的只是显示您所选择的内容。您可能需要做的是在隐藏的下拉列表中模拟中继器的值,并添加客户端代码以在下拉列表中选择合适的值,然后将ControlParameter绑定到此属性。
https://stackoverflow.com/questions/7958782
复制相似问题