Entity Framework로 첫 프로젝트를 진행하고 있으며 EntityDataSource 및 ListView에 고급 정보를 표시하는 데 어려움이 있습니다. 두 엔티티 주어진 예를 들어ASP.Net EntityFramework 및 ListView와 함께 Sum() 및 Count()와 함께 Eval 사용
:
항목
이름
가격
주문
항목 <가 ---- 항목에 대한 탐색 속성이 포함 번호 주문
모든 주문의 목록을 주문의 총 항목 수와 함께 표시하고 열을 순서의 모든 항목 가격의 합계와 함께 표시하려고합니다. 내가로 구성된 EntityDataSource를 사용하고
은 다음과 같습니다 나는 문제가 어떻게
<%# Eval("Number") %>
을 파악했다 : 다음과 같이있는 ListView의 ItemTemplate을에서
<asp:EntityDataSource ID="eds" runat="server" ConnectionString="name=NDSEntities"
DefaultContainerName="NDSEntities" EnableFlattening="False" Include="Items"
EntitySetName="Orders"></asp:EntityDataSource>
, 내가 주문 번호를 쓸 수 있습니다 명령의 항목 수를 표시합니다. EntityDataSource의 Select 문에서 Items.Count() 함수를 사용했지만 작동하지 않았습니다.
<%# Eval("Items").Count() %>
지금 내가 항목의 합계를 얻기 위해 노력하고 붙어 있어요 : 결국 나는 내 ItemTemplate을에서 다음을 수행 할 수 알아 냈어. 나는 여기 붙어있다. 나는
<%# Eval("Items").Sum(Function(i) i.Price)%>
를 사용하여 시도했지만 나는 다음과 같은 오류 얻을 : 나는 합계가 EntityCollection (의)의 방법임을 알고 있기 때문에
Public member 'Sum' on type 'EntityCollection(Of Item)' not found.
이 나를 혼란을.
오전 내가 항목이 올바르게 계산 방법 : 다음과 같이
내 두 가지 질문
은?항목 가격의 합계를 계산하려면 어떻게해야합니까?
아. 그것은 그것을 설명합니다. 대신 내 코드에서 함수를 만들고 EntityCollection을 매개 변수로 전달했습니다. 거기에서 합계를 수행하고 총 가격을 얻을 수 있습니다. – mgolus