【问题标题】:fetching primary key of inserted row with details view使用详细信息视图获取插入行的主键
【发布时间】:2023-04-03 09:03:01
【问题描述】:

我使用详细信息视图在我的 sql server 数据库中插入 sum 数据 它的表有一个名为 ID 的主键,并且这个 pk 启用了身份,因此它会自动生成! 插入后我需要获取插入行的 pk 并使用此代码

protected void DetailsView1_ItemInserted(object sender, DetailsViewInsertedEventArgs e)
{

    int id = Convert.ToInt32(e.Values["ID"]);
    Response.Redirect("BakhshnameAppendix.aspx?ID=" + id.ToString());
} 

但它总是返回 0 ! 如何获得插入的 ID?

【问题讨论】:

    标签: asp.net detailsview


    【解决方案1】:

    试试这个:

    protected void DetailsView1_ItemInserted(object sender, DetailsViewInsertedEventArgs e)
    {
    
       int intKey;
       if (int.TryParse(e.ReturnValue, out intKey))
       {
             Response.Redirect("BakhshnameAppendix.aspx?ID=" + intKey.ToString());
       }
    } 
    

    【讨论】:

    • 我使用详细视图,它是自动插入的,我不使用任何 sql 查询进行插入
    • @user1461377 请重新检查。答案已编辑。希望对你有帮助。
    • 我得到了这个错误'CS1061:'System.Web.UI.WebControls.DetailsViewInsertedEventArgs'不包含'ReturnValue'的定义并且没有扩展方法'ReturnValue'接受'System'类型的第一个参数.Web.UI.WebControls.DetailsViewInsertedEventArgs' 可以找到(您是否缺少 using 指令或程序集引用?)' e 没有 ReturnValue 属性
    • 使用 ObjectDataSourceStatusEventArgs 而不是 DetailsViewInsertedEventArgs
    • 我收到此错误消息:错误 3 'DetailsView1_ItemInserted' 没有重载匹配委托 'System.Web.UI.WebControls.DetailsViewInsertedEventHandler'
    猜你喜欢
    • 1970-01-01
    • 2010-12-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多