2013年6月11日 星期二

ASP.NET 新增資料後立即取得自動編號的ID(2)

ASP.NET 新增資料後立即取得自動編號的ID(2)


HTML:
  1. <asp:SqlDataSource ID="SqlDataSource1" runat="server"
  2. ConnectionString="<%$ ConnectionStrings:KMSConnectionString %>"
  3. InsertCommand="INSERT INTO category(cat001, cat002, objactive, objcreate) VALUES (@cat001,@cat002,@objactive,@objcreate);select @ID=@@Identity
  4. " oninserted="SqlDataSource1_Inserted">
  5. <InsertParameters>
  6. <asp:ControlParameter Name="cat001" ControlID="cat001" Type="String" />
  7. <asp:Parameter Name="cat002" DefaultValue="Folder" Type="String" />
  8. <asp:ControlParameter Name="objactive" ControlID="objactive" Type="String" />
  9. <asp:Parameter Name="objcreate" Type="String" />
  10. <asp:Parameter Name="ID" Direction="InputOutput" Type="Decimal" />
  11. </InsertParameters>
  12. </asp:SqlDataSource>

C#:
  1. protected void SaveButton_Click(object sender, ImageClickEventArgs e)
  2. {
  3. SqlDataSource1.InsertParameters["objcreate"].DefaultValue = Context.User.Identity.Name;
  4. SqlDataSource1.Insert();
  5. }
  6. protected void SqlDataSource1_Inserted(object sender, SqlDataSourceStatusEventArgs e)
  7. {
  8. string strReturn = e.Command.Parameters["@ID"].Value.ToString();
  9. }

沒有留言:

張貼留言