在搜索互聯網3天后未找到可接受的答案;這是什麼在起作用:
使用插入一個用戶名並返回一個ID的例...
創建一個類似的存儲過程:
create procedure Users_Insert
@UserName varchar(25)
,@UserId int = null output
as
insert into Users (UserName) values (@UserName)
select @UserId = scope_identity();
return @UserId;
現在在你的aspx頁面配置SqlDataSource的這樣:
<asp:SqlDataSource ID="dsUsers" runat="server"
ConnectionString="<%$ ConnectionStrings:dbConnection %>"
InsertCommand="Users_Insert" InsertCommandType="StoredProcedure" OnInserted="dsUsers_Inserted">
<InsertParameters>
<asp:ControlParameter ControlID="txtUserName" Name="UserName" Type="String" PropertyName="Text" />
<asp:Parameter Name="UserId" Type="Int32" Direction="ReturnValue" />
</InsertParameters>
</asp:SqlDataSource>
注OnInserted事件接線。現在
,在後面的代碼,或許在保存按鈕點擊事件,調用insert方法:
dsUsers.Insert();
最後,在我們以前的有線了dsUsers_Inserted方法,得到了認同:
protected void dsUsers_Inserted(object sender, SqlDataSourceStatusEventArgs e)
{
int userId = Convert.ToInt32(e.Command.Parameters["@UserId"].Value);
}
希望這可以幫助至少一個人。
快樂編碼!
非常感謝。但我想用sqlDatasource.Insert();有可能嗎? – user2955394
查看我編輯的答案... –