2012-02-03 3 views
1

내가 LINQ to XML의를 사용하여 다음 XML 조각 밖으로 "메시지"요소를 구문 분석하려고 Linq에와 XML 조각을 구문 분석하려고 해요하지만 어떤 이유로 작동하지 않습니다 :나는 XML

<error xmlns="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata"> 
    <code/> 
    <message xml:lang="en-US">Bad Request - Error in query syntax.</message> 
</error> 

나는 바보 같은 것을 놓치고 있다고 확신합니다.

+1

소스 코드 제공 –

답변

2

정확한 오류 메시지를 게시 할 때 오류가 발생하면 코드 결과가 예상대로 나타납니다.

XElement error = XElement.Parse(fragment); 
XNamespace df = error.Name.Namespace; 
XElement msg = error.Element(df + "message");. 
0

내가 그것을 알아 냈 : 조각은 네임 스페이스 그래서 당신은 같은 것을 할 확실히 선택 요소를 확인했다! 기본적으로 다음과 같이 기본 네임 스페이스를 사용해야합니다.

 var element = XElement.Parse(...); 

     var ns = element.GetDefaultNamespace(); 

     var message = element.Element(ns + "message").Value; 
+0

조각이 단일 요소 인 경우에만 작동합니다. – rainabba