Выберите параметр, не работающий на SqlDataSource

Я использую хранимую процедуру ниже для команды выбора SqlDataSource, и я пытаюсь передать параметр строки запроса, но я получаю эту ошибку:

Процедура или функция ActivationCampaignGetById ожидает параметр @campaignId, который не был предоставлен.

Параметр присутствует в строке запроса:

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

Вот мой код источника данных:

<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>

И мое объявление хранимой процедуры:

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

1 ответ

Решение

Не уверен, что это поможет, но вам нужно установить направление параметра на Input:

<asp:QueryStringParameter DefaultValue="98" Name="campaignId" 
       Direction="Input" QueryStringField="id" Type="Int32" />
Другие вопросы по тегам