여러 기본 키가있는 데이터 목록 행 삭제


4

데이터 요청자에 OnDeleteCommand = "Delete_Command"가 있습니다.

여러 개의 기본 키가있는 레코드를 삭제하고 싶지만 Delete_Command 이벤트에서 액세스하는 방법을 모르겠습니다.

DataKeyField를 사용할 경우 하나의 키로 제한됩니다. 해결 방법은 무엇입니까? ROWNUM은 gridView_RowDeleting 이벤트 핸들러에서 e.RowIndex을 어디

gridView.DataKeys[rowNum][dataKeyName] 

및 dataKeyName는 당신이 얻을하고자하는 핵심입니다 :

1

당신은 모든 키에 액세스 할 수 있습니다

<asp:GridView ID="gridView" runat="server" DataKeyNames="userid, id1, id2, id3" OnRowDeleting="gridView_RowDeleting"> 

protected void gridView_RowDeleting(object sender, GridViewDeleteEventArgs e) 
{ 
    gridView.DataKeys[e.RowIndex]["userid"]... 
    gridView.DataKeys[e.RowIndex]["id1"]... 
    gridView.DataKeys[e.RowIndex]["id2"]... 
    gridView.DataKeys[e.RowIndex]["id3"]... 
} 

0

오, 미안, 나는 그것을 놓쳤다.

AFAIK 기본적으로 그러한 가능성은 없습니다. 어쩌면 당신은

Key1UnderscoreKey2UnderscoreKey3

처럼, 기본 키에서 복합 키를 생성하고 이벤트 처리기에 분할 할 수 있습니다. 그래서 이것은 DataList를위한 DIY 다중 키 핸들러입니다 :-)

편집 : 밑줄은 형식 중에 손실되어 기울임 꼴로 바뀝니다. 따라서 "밑줄"대신 실제 밑줄을 사용하십시오