DetailsViewInsertedEventArgs 有一个名为 Values 的属性,但是当您从 DetailsView 插入时,通常不会通过文本框提供主键,因此新分配的主键不会在那里。
您可以改用 EntityDataSource.Inserted 事件。它传递 EntityDataSourceChangedEventArgs ,它具有一个 Entity 属性,您可以对其进行类型转换,然后获取主键属性的值。例如,如果我刚刚通过 EntityDataSource 将一个名为 Dependent 的实体插入到我的 ObjectContext 中,那么我的 EntityDataSource 事件处理程序可能如下所示:
protected override dependentInformationDataSource_OnInserted(object sender, EntityDataSourceChangedEventArgs e )
{
// let's say my Dependent entity's primary key is called DependentKey
int newPrimaryKey = ((Dependent)e.Entity).DependentKey;
// do something with newPrimaryKey
}