2016-06-09 1 views
0

저는 파일에 관한 정보를 저장하기 위해 XElement를 사용 해왔고 모든 파일 길이를 합하여 파일의 총 크기를 얻을 수 있기를 원합니다.XElement를 사용하여 속성 합계를 검색하려면 어떻게해야합니까?

나는

xmlDir.Elements("File").Attributes("Length").Sum(); 

내가 대답은 아마 람다 표현식을 사용 생각 ... 이런 식으로 뭔가를 할 대답을 원하는 유지,하지만 난 그것을 프레임하는 방법을 모르겠어요.

XElement의 요소를 합하는 방법을 알려주지 만 특성 값을 합산하는 방법을 알려주지 않은 답변을 발견했습니다.

<?xml version="1.0" encoding="utf-8"?> 
<DirectoryDetails Path="F:\IndianSprings\Condensates" SerialNumber="10092693"> 
    <File Name="Start Menu\Programs\Games\Minesweeper.lnk" Length="1515" DateLastModified="2010-03-15T18:09:25.2325712-04:00" DateCreated="2010-08-16T05:11:39.171875-04:00" /> 
    <File Name="Start Menu\Programs\Games\Pinball.lnk" Length="885" DateLastModified="2010-03-15T18:09:25.2225568-04:00" DateCreated="2010-08-16T05:11:39.1875-04:00" /> 
    <File Name="Start Menu\Programs\Games\Solitaire.lnk" Length="1491" DateLastModified="2010-03-15T18:09:25.2325712-04:00" DateCreated="2010-08-16T05:11:39.21875-04:00" /> 
    <File Name="Start Menu\Programs\Games\Spider Solitaire.lnk" Length="1502" DateLastModified="2010-03-15T18:09:25.2425856-04:00" DateCreated="2010-08-16T05:11:39.515625-04:00" /> 
</DirectoryDetails> 

답변

2

당신이 거의

var result = xmlDir.Elements("File").Attributes("Length").Sum(a=>(int)a); 

a이 XAttribute와 XAttribute가 int ((int)a)

당신이 var에 v를 시도 할 수 있습니다
+0

우수! 이제 내가 왜 1 바이트 밖에 나오는지 알아낼 수 있다면 ... LOL –

1

에 명시 적 캐스트를 지원 받았습니다 = xmlDir.Elements ("파일 ") .Attributes ("Length "). Sum (x => (int) x);

관련 문제