숨겨진 값을 사용하여 LINQ에서 뮬리 레코드에 대한 삭제/편집 버튼을 만듭니다.

StackOverflow https://stackoverflow.com/questions/1300668

  •  18-09-2019
  •  | 
  •  

문제

ASPX 양식 :

<asp:Table ID="viewV" runat="server">
  <asp:TableRow>
    <asp:TableHeaderCell>Name</asp:TableHeaderCell>
    <asp:TableHeaderCell>Type</asp:TableHeaderCell>
  </asp:TableRow>       
</asp:Table>

아래 코드 :

vRepository getV = new vRepository();

var viewAllV = getV.GetV();

foreach (tblV singleV in viewAllV)
{
    TableRow tr = new TableRow();

    // Create four new cells for each row within the database

    TableCell vName = new TableCell();
    TableCell vType = new TableCell();

    // Attached values to each of these cells

    vName.Text = singleV.vName;
    vType.Text = singleV.tblVType.vName;

    // Add the cells to the table

    tr.Cells.Add(vName);
    tr.Cells.Add(vType);

    // Add the row to the table

    viewV.Rows.Add(tr);
}

나는 현재 LINQ를 사용하여 ASP : 테이블을 채우고 있습니다. 이것은 잘 작동합니다.

public IQueryable<tblV> GetV()
{
    return (from getAllV in dc.tblV
            where getAllV.deleted != 1
            orderby getAllV.vName
            select getAllV).DefaultIfEmpty();
}

GridView/ListView/DetailSView를 시도했지만 GETV에 액세스 할 수없는 것 같습니다. 실제 테이블에만 액세스 할 수 있습니다.

모든 행의 끝에 편집/삭제 버튼을 추가하여 사용자가 편집/삭제하려는 행을 선택할 수 있도록합니다.

사용자가 편집/삭제 버튼을 선택한 후에는 다른보기 (편집 용, 추가 용 ADS -ASPX 파일 내)에 액세스해야합니다.

예를 들어:

Name    Type

Example 1   Type 1  Edit Button Delete Button

Example 2   Type 1  Edit Button Delete Button

'예제 1'의 편집 버튼을 선택할 수 있기를 원합니다. 그러면 이것은 :

  1. 나를 '편집보기'로 데려가
  2. 올바른 정보로 두 텍스트 필드를 자동으로 채우고
  3. 고유 ID (PK)를 사용하여 새 정보로 행 (데이터베이스 내)을 업데이트하십시오.

어떻게 해당 행의 고유 ID를 보유하는 여러 편집/삭제 버튼을 생성 했습니까?

나는 그것이 다음과 같은 것이라고 생각했다 :

TableCell vEdit = new TableCell();
vEdit.Button = singleV.vID;
tr.Cells.Add(vEdit);
도움이 되었습니까?

해결책

실제로 "하드 코드"를 원한다면 ASP.NET MVC를 사용하십시오. 그렇지 않으면 실제로 일종의 데이터 라운드 컨트롤을 사용해야합니다.

즉,이 접근법을 주장하면 다음과 같은 일을 할 수 있습니다.

Button editButton = new Button();
editButton.Text = "Edit";
editButton.CommandArgument = singleV.vID.ToString();
editButton.CommandName = "Edit";
editButton.OnCommand += new CommandEventHandler(EditButton_Command);

TableCell vEdit = new TableCell();
vEdit.Controls.Add(editButton);

tr.Cells.Add(vEdit);

그런 다음 이벤트 핸들러에서 CommandeventArgs 인수를 검색하고 그에 따라 견해를 변경할 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top