2013-09-02 2 views
0

이 코드를 이해하는 데 어려움을 겪고 있습니다. 누구든지이 문제를 해결할 수 있습니까? 내가 틀리지 않다면 StrStaffInfo이 XML 태그를 저장하는 데 사용됩니다. XML 태그를 저장하고 데이터를 검색하는 방법

나는 태그가 XML 파일에 저장하는 방법과 그 태그에 액세스하는 방법을 알고 싶어?
<script runat="server"> 
Public StaffInfoXML as new xmlDocument 

sub Page_Load(obj as object, e as eventargs) 

    Dim StrStaffInfo, strConnXMLData, strConnStr, SpString as String 
    Dim oStaffDAW as New DAWNET.DataAccess.XMLWrapper.DAW() 
    Dim oConn as new ConnectionString.Access.DataBase.IO.ConnectionString 

    ' Fetch the Connection String from Configuration File 
    oConn.SetPath(MapPath("")) 
    strConnStr = oConn.FetchConnectionString(strConnXMLData) 


    SpString = "StaffInformationSelect '"& Decode(LOGONUSER.ToString) &"','"& Decode(CLIENTIP.ToString) &"','"& Decode(MACHINENAME.ToString) &"'" 
    oStaffDAW.FetchXml(strConnStr, SpString, StrStaffInfo) 

      StaffInfoXML.LoadXml(StrStaffInfo) 



    if (StaffInfoXML.GetElementsByTagName("RECORD").Count = 0) 
     Response.Redirect("Application.aspx") 
     Response.End 
    End if 

end sub 

는 어디 태그 이름 "기록은"저장됩니까? 다른 태그를 포함하고 If 조건을 확인하고 싶습니다.

+0

[VBA] (http://msdn.microsoft.com/en-us/library/7ee5a7s1.aspx) 및/또는 [ASP] (http://msdn.microsoft.com/ en-us/library/f0111sbh % 28v = vs.100 % 29.aspx), 그 자체는 HTML이 아닙니다. 그것은 HTML을 생성 할 수도 있지만 HTML만이 아닙니다. – jerdiggity

+0

예, ASP, 태그 저장 방법에 대해 알고 있습니까? – user2738563

+0

솔직히 ASP에 익숙하지 않지만 ASP 태그를 게시물에 추가 했으므로 올바른 지식을 가진 사람들이 볼 수 있습니다. :) – jerdiggity

답변

1

참고 귀하의 질문에 직접 대답하지만, strStaffInfo는 XML의 문자열이며, 다음 줄이있는 XmlDocument (StaffInfoXML)에로드되는 :

StaffInfoXML.LoadXml(StrStaffInfo) 

태그 RECORD이 어딘가에 문서 트리. GetElementsByTagName은 모든 태그 (노드)와 문서에서 이름이 "RECORD"인 하위의 XmlNodeList을 반환합니다.

당신은 당신이 찾고있는 요소 (태그)의 이름을 알고 있다면, 당신은 GetElementsByName 다른 호출을하고, 그 값 (들)을 확인할 수 있습니다/당신의 If 조건에 대한 그 요소 (들).

또한 (XML을 구문 분석에 대한 내 선호하는 방법입니다) XML에 LINQ에서 살펴 것입니다.

1

용어에주의하십시오. 태그는보다 작은 문자와 큰 문자로 구분 된 텍스트입니다. 요소에는 여는 태그와 닫는 태그가 있으며 두 태그 사이에 추가 콘텐츠가있을 수 있습니다. 요소는 중요한 것입니다.

코드는 XML 결과를 생성하여 데이터베이스에 저장 프로 시저로 표시되는, StaffInformationSelect를 호출한다. 예, StrStaffInfo은 결과를 XML이 포함 된 문자열로 유지해야합니다.

그러면 XML 결과가 XMLDocument 인 .NET XML DOM (Document Object Model) 클래스의 인스턴스 인 StaffInfoXML 개체로로드됩니다. 다른 페이지로 리디렉션, 아무도없는 경우

는 그런 다음 XML 문서가 어떤 RECORD 요소가 있는지 찾고,하고 있어요. 문서가이처럼 보였다 경우

<?xml version="1.0"?> <root> <RECORD></RECORD> <RECORD></RECORD> </root>

가 Count 속성이 외에도 기존 코드에서 볼 수있는 GetElementsByTagName 방법 2.

의 값을 가질 것이다을 찾을 것이다, GetElementById 체크 아웃 요소를 고유 ID로 대체합니다.

태그 이름은 StaffInformationSelect에 의해 정의된다. 데이터베이스의 테이블 이름과 일치 할 수 있습니다.

GetElementsByTagName 당신을 통해 반복 할 수 XmlNode 개체의 컬렉션을 생성합니다. 문서의 일부 요소를 복잡하게 검색하려면 XPathDocument 또는 XML 문서에서 LINQ 쿼리를 실행할 수있는 XDocument을 확인하십시오.

이 코드에 디버거를 연결할 수 있으면 LoadXML을 호출하는 줄에 중단 점을 설정하면 StrStaffInfo 변수에 XML 문서가 표시됩니다.

관련 문제