Vb.net 在SSRS中添加一个参数值

Vb.net 在SSRS中添加一个参数值,vb.net,winforms,reporting-services,ssrs-2008,subscription,Vb.net,Winforms,Reporting Services,Ssrs 2008,Subscription,我已经在ReportServer上设置了一个报表。以及它的订阅。我要做的是添加参数值“CC”和一些电子邮件地址,然后发送电子邮件。它似乎不起作用 我的代码: Dim emailReader As SqlDataReader = selCount.ExecuteReader Dim emailsTest As List(Of String) = New List(Of String) emailsTest.Add("test1@pen.com") emailsTest.Add("test2@pen

我已经在ReportServer上设置了一个报表。以及它的订阅。我要做的是添加参数值“CC”和一些电子邮件地址,然后发送电子邮件。它似乎不起作用

我的代码:

Dim emailReader As SqlDataReader = selCount.ExecuteReader
Dim emailsTest As List(Of String) = New List(Of String)
emailsTest.Add("test1@pen.com")
emailsTest.Add("test2@pen.com")
emailsTest.Add("test3@pen.com")
emailsTest.Add("test4@pen.com")
If emailReader.HasRows() Then 'checks to see if there any quotes in query

    For Each subscrp As rs.Subscription In subscr
        Dim allValues = subscrp.DeliverySettings.ParameterValues
        Dim allValuesList As List(Of ReportTriggerTemplate1.rs.ParameterValueOrFieldReference) = allValues.ToList()
        Dim CCParameter As ReportTriggerTemplate1.rs.ParameterValue = New ReportTriggerTemplate1.rs.ParameterValue()
        CCParameter.Name = "CC"
        CCParameter.Value = String.Empty
        allValuesList.Add(CCParameter)
        Dim toValue = CType(allValuesList.Item(7), ReportTriggerTemplate1.rs.ParameterValue)

        For Each testEmail As String In emailsTest
            Dim ownerEmail As String = testEmail
            If toValue.Value.Contains(ownerEmail) Then
                'skip
            ElseIf toValue.Value = String.Empty Then
                toValue.Value += ownerEmail
            Else
                toValue.Value += "; " & ownerEmail
            End If
        Next
        subscrp.DeliverySettings.ParameterValues = allValuesList.ToArray()
        Dim hello As String = "hi"
        tr.FireEvent(EventType, subscrp.SubscriptionID) 'forces subscription to be sent
    Next
我添加到toValue的内容。Value似乎根本没有添加到报表的CC subscription字段。那么我错过了什么呢?

'跳到相关代码

        For Each subscrp As rs.Subscription In subscr

                Dim allValues = subscrp.DeliverySettings.ParameterValues
                Dim allValuesList As List(Of ReportTriggerTemplate1.rs.ParameterValueOrFieldReference) = allValues.ToList()

                If CType(allValuesList.Item(0), ReportTriggerTemplate1.rs.ParameterValue).Value = "test@pen.com" Then
                    Dim subsID = subscrp.SubscriptionID
                    'important code just below
                    tr.GetSubscriptionProperties(subsID, extSettings, desc, active, status, EventType, matchData, extensionParams)

                    ''''add change to CC here
                    Dim extSettingsList As List(Of ReportTriggerTemplate1.rs.ParameterValueOrFieldReference) = extSettings.ParameterValues.ToList()
                    If CType(extSettingsList.Item(1), ReportTriggerTemplate1.rs.ParameterValue).Name = "CC" Then
                        If CType(extSettingsList.Item(1), ReportTriggerTemplate1.rs.ParameterValue).Value = String.Empty Then
                            CType(extSettingsList.Item(1), ReportTriggerTemplate1.rs.ParameterValue).Value = emailsTest.Item(0) & ";" & emailsTest.Item(1)
                        Else
                            CType(extSettingsList.Item(1), ReportTriggerTemplate1.rs.ParameterValue).Value += ";" & emailsTest.Item(0) & ";" & emailsTest.Item(1)
                        End If
                    Else
                        Dim CCParameter As ReportTriggerTemplate1.rs.ParameterValue = New ReportTriggerTemplate1.rs.ParameterValue()
                        CCParameter.Name = "CC"
                        CCParameter.Value = emailsTest.Item(0) & ";" & emailsTest.Item(1)
                        extSettingsList.Insert(1, CCParameter)
                        extSettings.ParameterValues = extSettingsList.ToArray
                    End If
                    'important code just below
                    tr.SetSubscriptionProperties(subsID, extSettings, desc, EventType, matchData, extensionParams)

                    tr.FireEvent(EventType, subscrp.SubscriptionID) 'forces subscription to be sent

                Else


                End If

         Next

'跳到相关代码

        For Each subscrp As rs.Subscription In subscr

                Dim allValues = subscrp.DeliverySettings.ParameterValues
                Dim allValuesList As List(Of ReportTriggerTemplate1.rs.ParameterValueOrFieldReference) = allValues.ToList()

                If CType(allValuesList.Item(0), ReportTriggerTemplate1.rs.ParameterValue).Value = "test@pen.com" Then
                    Dim subsID = subscrp.SubscriptionID
                    'important code just below
                    tr.GetSubscriptionProperties(subsID, extSettings, desc, active, status, EventType, matchData, extensionParams)

                    ''''add change to CC here
                    Dim extSettingsList As List(Of ReportTriggerTemplate1.rs.ParameterValueOrFieldReference) = extSettings.ParameterValues.ToList()
                    If CType(extSettingsList.Item(1), ReportTriggerTemplate1.rs.ParameterValue).Name = "CC" Then
                        If CType(extSettingsList.Item(1), ReportTriggerTemplate1.rs.ParameterValue).Value = String.Empty Then
                            CType(extSettingsList.Item(1), ReportTriggerTemplate1.rs.ParameterValue).Value = emailsTest.Item(0) & ";" & emailsTest.Item(1)
                        Else
                            CType(extSettingsList.Item(1), ReportTriggerTemplate1.rs.ParameterValue).Value += ";" & emailsTest.Item(0) & ";" & emailsTest.Item(1)
                        End If
                    Else
                        Dim CCParameter As ReportTriggerTemplate1.rs.ParameterValue = New ReportTriggerTemplate1.rs.ParameterValue()
                        CCParameter.Name = "CC"
                        CCParameter.Value = emailsTest.Item(0) & ";" & emailsTest.Item(1)
                        extSettingsList.Insert(1, CCParameter)
                        extSettings.ParameterValues = extSettingsList.ToArray
                    End If
                    'important code just below
                    tr.SetSubscriptionProperties(subsID, extSettings, desc, EventType, matchData, extensionParams)

                    tr.FireEvent(EventType, subscrp.SubscriptionID) 'forces subscription to be sent

                Else


                End If

         Next