0

我不确定我应该在我的 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)
4

1 回答 1

0

我认为问题在于中继器没有选定值的概念。他们所做的就是展示您选择的内容。您可能需要做的是模仿隐藏下拉列表中的转发器值并添加客户端代码以在下拉列表中选择适当的值,然后将您的 ControlParameter 绑定到此属性。

于 2011-10-31T20:46:00.870 回答