SqlDataSourceのselectコマンドに以下のストアドプロシージャを使用していて、クエリ文字列パラメーターを渡そうとしていますが、次のエラーが発生します。
プロシージャまたは関数'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