2012-05-07 4 views
2

내가 (SQL에서)asp.net ListView, 계산 된 요약을 바닥 글에 표시 하시겠습니까?

내 공식은 내 ASP.NET 웹 사이트에 학생들의 일반 칭량 평균 (GWA)에 대한 계산하기 위해 노력하고있어

ROUND(SUM((UnitsAcademic*Grade))/SUM(UnitsAcademic),3) 

지금까지, 여기 내 ASP.NET입니다. ASP.NET을 사용하여 GWA를 계산하고 싶습니다. 지금 나는 좀 붙어있다.

ASPX

<asp:ListView OnItemDataBound="listviewGrade_ItemDataBound" ID="listviewGrade" runat="server" DataSourceID="sqlGrade" DataKeyNames="GradebookDetailId"> 
        <LayoutTemplate> 
           <table class="Container8" > 
            <tbody> 
            <tr> 
             <th>Subject Code</th> 
             <th>Description</th> 
             <th>Units</th> 
             <th>Grade</th> 
             <th>Remarks</th> 
             <th>Faculty Name</th> 
            </tr> 
            <tr id="itemPlaceholder" runat="server" /> 
            </tbody> 
           </table> 

          </LayoutTemplate> 
          <ItemTemplate> 
           <tr> 
            <td><%# Eval("SubjectCode") %></td> 
            <td><%# Eval("Description") %></td> 
            <td><asp:Label ID="lblUnitsAcademic" runat="server" Text='<%# Eval("UnitsAcademic") %>' /></td> 
            <td><asp:Label ID="lblGrade" runat="server" Text='<%# Eval("Grade") %>' /></td> 
            <td><%# Eval("Remarks") %></td> 
            <td><%# Eval("FacultyName") %></td> 
           </tr> 
          </ItemTemplate> 

         </asp:ListView> 
<br/> 
<asp:Label ID="lblGWA" runat="server" /> 

C#을

protected void listviewGrade_ItemDataBound(object sender, ListViewItemEventArgs e) 
{ 
    Label lblGrade = (Label)e.Item.FindControl("lblGrade"); 
    Label lblUnitsAcademic = (Label)e.Item.FindControl("lblUnitsAcademic"); 
} 

답변

4

이 시도 :
영문 :

<asp:ListView OnItemDataBound="listviewGrade_ItemDataBound" ID="listviewGrade" runat="server" 
     DataSourceID="sqlGrade" DataKeyNames="GradebookDetailId"> 
     <LayoutTemplate> 
      <table class="Container8"> 
       <tbody> 
        <tr> 
         <th> 
          Subject Code 
         </th> 
         <th> 
          Description 
         </th> 
         <th> 
          Units 
         </th> 
         <th> 
          Grade 
         </th> 
         <th> 
          Remarks 
         </th> 
         <th> 
          Faculty Name 
         </th> 
        </tr> 
        <tr id="itemPlaceholder" runat="server" /> 
       </tbody> 
       <tfoot> 
        <asp:Label ID="lblSum" runat="server" Text="Label"></asp:Label> 
       </tfoot> 
      </table> 
     </LayoutTemplate> 
     <ItemTemplate> 
      <tr> 
       <td> 
        <%# Eval("SubjectCode") %> 
       </td> 
       <td> 
        <%# Eval("Description") %> 
       </td> 
       <td> 
        <asp:Label ID="lblUnitsAcademic" runat="server" Text='<%# Eval("UnitsAcademic") %>' /> 
       </td> 
       <td> 
        <asp:Label ID="lblGrade" runat="server" Text='<%# Eval("Grade") %>' /> 
       </td> 
       <td> 
        <%# Eval("Remarks") %> 
       </td> 
       <td> 
        <%# Eval("FacultyName") %> 
       </td> 
      </tr> 
     </ItemTemplate> 
    </asp:ListView> 

연사 :

int sum = 0; 
protected void listviewGrade_ItemDataBound(object sender, ListViewItemEventArgs e) 
{  
    if (e.Item.ItemType == ListViewItemType.DataItem) 
    { 
     Label lblGrade = (Label)e.Item.FindControl("lblGrade"); 
     Label lblUnitsAcademic = (Label)e.Item.FindControl("lblUnitsAcademic"); 
     sum += Convert.ToInt32(lblUnitsAcademic.Text) * 
      Convert.ToInt32(lblGrade.Text)/Convert.ToInt32(lblUnitsAcademic.Text); 

    }  
} 



protected void listviewGrade_LayoutCreated(object sender, EventArgs e) 
{ 

    Label lblSum = (Label)listviewGrade.FindControl("lblSum"); 
    lblSum.Text = sum.ToString(); 
} 
관련 문제