2012-04-04 11 views
2

나는 FogBugz XML API을 소비하고 있지만 문제가 있습니다. 새로운 케이스를 만들고, 생성 된 케이스를 열고, 앱을 통해 케이스를 검색 할 수 있습니다. 문제는 그 다음 코드 조각을 사용하여 케이스의 몸을 얻을 수있는 페이로드를 가져올 때 구성 :FogBugz XML API (사례 :

 string fbToken = LogOnFogBugz(); 
     string param = ""; 

     param += "cmd=search"; 
     param += "&token=" + fbToken; 
     param += "&q="+ "appID["+appID+"]"; 
     param += "&cols=sTitle,sStatus,sLatestTextSummary"; 

     HttpWebRequest httpWebRequest = (HttpWebRequest)WebRequest.Create(fbUrl + param); 
     httpWebRequest.Method = WebRequestMethods.Http.Post; 
     httpWebRequest.Accept = "application/xml"; 
     httpWebRequest.ContentLength = 0; 

     HttpWebResponse response = (HttpWebResponse)httpWebRequest.GetResponse(); 
     StreamReader streamReader = new StreamReader(response.GetResponseStream()); 
     XDocument doc = XDocument.Load(streamReader); 

var cases = from c in doc.Descendants("case") 
        select new 
         { 
          CaseNumber = c.Attribute("ixBug").Value, 
          CaseTitle = (string)c.Element("sTitle"), 
          CaseStatus = (string)c.Element("sStatus"), 
          CaseText = (string)c.Element("sLatestTextSummary") 
         }; 

을하지만이 사건을 편집하고 텍스트를 추가하면, 난 단지 마지막으로 텍스트를 입력하세요 (sLatestTextSummary)이 의미합니다.

XML API를 사용하여 케이스에서 전체 텍스트를 가져 오는 방법은 무엇입니까?

예 : XXX에 XXX 2012년 4월 4일 (오늘) 오전 10시 31분 에 의해 개설

------------------- 오전 10시 31분

2012년 4월 4일 (오늘) XXX의 XXX 의해 편집 ------> 어쩌구 XXX의 XXX 2012년 4월 4일하여 XXX의 XXXX에 할당

(오늘) 2 00 PM ----------------------------> 새 텍스트.

나는 단지 {new text}입니다.

미리 감사드립니다.

에드

답변

1

당신은 당신의 cols 인수 중 하나로 events를 포함합니다. 그런 다음 각 경우에 대해 이벤트를 반복하여 텍스트를 가져와야합니다.

+0

정확한 방향으로 안내해 주셔서 감사합니다. 유료 하중에서 그 (요소)를 놓쳤습니다. – EdMore

+0

이벤트의 실제 "Blah Blah"텍스트가 아닌 "Opened by"또는 "Edited by"텍스트 만 필요하면 'minievents'를 사용하는 것이 좋습니다. 이렇게하면 시간과 서버로드가 절약됩니다. –