2010-04-18 2 views
0

J'utilise la procédure stockée ci-dessous pour la commande de sélection d'un SqlDataSource, et je suis en train de passer un paramètre de chaîne de requête, mais je reçois cette erreur:Sélectionner le paramètre ne fonctionne pas sur SqlDataSource

Procédure ou fonction 'ActivationCampaignGetById' attend le paramètre '@campaignId', qui n'a pas été fourni.

Le paramètre est présent dans la chaîne de requête:

http://localhost:62681/Activations/ActivationCampaignDetails.aspx?id=98 

Voici mon code DataSource:

<asp:SqlDataSource ID="campaignDataSource" runat="server" ConflictDetection="CompareAllValues" 
    ConnectionString="<%$ ConnectionStrings:ProVantageMediaManagement %>" 
    SelectCommand="ActivationCampaignGetById" SelectCommandType="StoredProcedure"> 
    <SelectParameters> 
     <asp:QueryStringParameter DefaultValue="98" Name="campaignId" 
      QueryStringField="id" Type="Int32" /> 
    </SelectParameters> 
</asp:SqlDataSource> 

Et ma déclaration de procédure stockée:

ALTER procedure [dbo].[ActivationCampaignGetById] 
    @campaignId int 
as 
select 

Répondre

4

ce Je ne sais pas aidera, mais vous devez définir la direction du paramètre à l'entrée:

<asp:QueryStringParameter DefaultValue="98" Name="campaignId" 
     Direction="Input" QueryStringField="id" Type="Int32" /> 
+0

Cela a fonctionné pour moi aussi! Mais je n'ai aucune idée de comment .... – MAW74656

Questions connexes