다음을 통해 공유


XML 특성 축 속성(Visual Basic)

XElement 개체 또는 XElement 개체 컬렉션의 첫 번째 요소에 대한 특성 값에 대한 액세스를 제공합니다.

구문

object.@attribute
' -or-
object.@<attribute>

부분

object 필수입니다. XElement 개체 또는 XElement 개체의 컬렉션입니다.

.@ 필수. 특성 축 속성의 시작을 표시합니다.

< 선택 사항입니다. attribute가 Visual Basic에서 유효한 식별자가 아닌 경우 특성 이름의 시작을 표시합니다.

attribute 필수입니다. 액세스할 특성의 이름으로 [prefix:]name 형식입니다.

요소 설명
prefix 선택 사항입니다. 특성의 XML 네임스페이스 접두사입니다. Imports 문으로 정의되는 전역 XML 네임스페이스여야 합니다.
name 필수입니다. 로컬 특성 이름입니다. 선언된 XML 요소 및 특성의 이름을 참조하세요.

> 선택 사항입니다. attribute가 Visual Basic에서 유효한 식별자가 아닌 경우 특성 이름의 끝을 표시합니다.

Return Value

attribute 값을 포함하는 문자열입니다. 특성 이름이 없으면 Nothing이 반환됩니다.

설명

XML 특성 축 속성을 사용하여 XElement 개체 또는 XElement 개체 컬렉션 의 첫 번째 요소에서 이름으로 특성 값에 액세스할 수 있습니다. 이름으로 특성 값을 검색하거나 @ 식별자 앞에 새 이름을 지정하여 요소에 새 특성을 추가할 수 있습니다.

@ 식별자를 사용하여 XML 특성을 참조하면 특성 값이 문자열로 반환되며 Value 속성을 명시적으로 지정할 필요가 없습니다.

XML 특성에 대한 명명 규칙은 Visual Basic 식별자에 대한 명명 규칙과 다릅니다. 유효한 Visual Basic 식별자가 아닌 이름을 가진 XML 특성에 액세스하려면 이름을 꺾쇠 괄호(< 및 >)로 묶습니다.

XML 네임스페이스

특성 축 속성의 이름은 Imports 문을 사용하여 전역적으로 선언된 XML 네임스페이스 접두사만 사용할 수 있습니다. XML 요소 리터럴 내에서 로컬로 선언된 XML 네임스페이스 접두사를 사용할 수 없습니다. 자세한 내용은 Imports 문(XML 네임스페이스)을 참조하세요.

예 1

다음 예에서는 이름이 phone인 XML 요소 컬렉션에서 type이라는 XML 특성 값을 가져오는 방법을 보여줍니다.

' Topic: XML Attribute Axis Property
Dim phones As XElement = 
    <phones>
        <phone type="home">206-555-0144</phone>
        <phone type="work">425-555-0145</phone>
    </phones>

Dim phoneTypes As XElement = 
  <phoneTypes>
      <%= From phone In phones.<phone> 
          Select <type><%= phone.@type %></type> 
      %>
  </phoneTypes>

Console.WriteLine(phoneTypes)

이 코드의 텍스트는 다음과 같습니다.

<phoneTypes>

<type>home</type>

<type>work</type>

</phoneTypes>

예제 2

다음 예제에서는 XML 요소에 대한 특성을 선언적으로, XML의 일부로, 동적으로 XElement 개체의 인스턴스에 추가하는 방법을 보여 줍니다. type 특성은 선언적으로 만들어지고 owner 특성은 동적으로 만들어집니다.

Dim phone2 As XElement = <phone type="home">206-555-0144</phone>
phone2.@owner = "Harris, Phyllis"

Console.WriteLine(phone2)

이 코드의 텍스트는 다음과 같습니다.

<phone type="home" owner="Harris, Phyllis">206-555-0144</phone>

예 3

다음 예제에서는 꺾쇠괄호 구문을 사용하여 Visual Basic에서 유효한 식별자가 아닌 number-type이라는 XML 특성의 값을 가져옵니다.

Dim phone As XElement = 
     <phone number-type=" work">425-555-0145</phone>

 Console.WriteLine("Phone type: " & phone.@<number-type>)

이 코드의 텍스트는 다음과 같습니다.

Phone type: work

예시 4

다음 예제에서는 ns를 XML 네임스페이스 접두사로 선언한 다음 네임스페이스의 접두사를 사용하여 XML 리터럴을 만들고 정규화된 이름 “ns:name”을 가진 첫 번째 자식 노드에 액세스합니다.

Imports <xmlns:ns = "http://SomeNamespace"> 
 
Class TestClass3

    Shared Sub TestPrefix()
        Dim phone = 
            <ns:phone ns:type="home">206-555-0144</ns:phone>

        Console.WriteLine("Phone type: " & phone.@ns:type)
    End Sub

End Class

이 코드의 텍스트는 다음과 같습니다.

Phone type: home

참고 항목