Imports 문(.NET 네임스페이스 및 형식)

네임스페이스 한정 없이 형식 이름을 참조할 수 있습니다.

구문

Imports [ aliasname = ] namespace
' -or-
Imports [ aliasname = ] namespace.element

부분

용어 정의
aliasname 선택 사항. 코드가 전체 한정 문자열 대신 namespace를 참조할 수 있는 가져오기 별칭 또는 이름입니다. Declared Element Names을 참조하세요.
namespace 필수입니다. 가져오는 네임스페이스의 정규화된 이름입니다. 모든 수준에 중첩된 네임스페이스 문자열일 수 있습니다.
element 선택 사항. 네임스페이스에 선언된 프로그래밍 요소의 이름입니다. 모든 컨테이너 요소가 될 수 있습니다.

설명

Imports 문을 사용하면 지정된 네임스페이스에 포함된 형식을 직접 참조할 수 있습니다.

단일 네임스페이스 이름이나 중첩된 네임스페이스 문자열을 제공할 수 있습니다. 다음 예에 표시된 것처럼 중첩된 각 네임스페이스는 마침표(.)로 다음 상위 수준 네임스페이스와 구분됩니다.

Imports System.Collections.Generic

각 원본 파일에는 원하는 수의 Imports 문이 포함될 수 있습니다. 이는 Option Strict 문과 같은 옵션 선언 뒤에 와야 하며, Module 또는 Class 문과 같은 프로그래밍 요소 선언 앞에 나와야 합니다.

파일 수준에서만 Imports를 사용할 수 있습니다. 이는 가져오기를 위한 선언 컨텍스트가 원본 파일이어야 하며 네임스페이스, 클래스, 구조체, 모듈, 인터페이스, 프로시저 또는 블록이 될 수 없음을 의미합니다.

Imports 문은 다른 프로젝트 및 어셈블리의 요소를 프로젝트에서 사용할 수 있도록 만들지 않습니다. 가져오기는 참조 설정을 대신하지 않습니다. 프로젝트에 이미 사용 가능한 이름을 한정할 필요만 제거됩니다. 자세한 내용은 선언된 요소에 대한 참조의 "포함하는 요소 가져오기"를 참조하세요.

참고 항목

참조 페이지, 프로젝트 디자이너(Visual Basic)를 사용하여 암시적 Imports 문을 정의할 수 있습니다. 자세한 내용은 방법: 가져온 네임스페이스(Visual Basic) 추가 또는 제거를 참조하세요.

Import 별칭

가져오기 별칭은 네임스페이스 또는 형식의 별칭을 정의합니다. 가져오기 별칭은 하나 이상의 네임스페이스에 선언된 동일한 이름의 항목을 사용해야 할 때 유용합니다. 자세한 내용과 예를 보려면 선언된 요소에 대한 참조의 "요소 이름 한정"을 참조하세요.

aliasname과 동일한 이름을 가진 멤버를 모듈 수준에서 선언하면 안 됩니다. 그렇게 하면 Visual Basic 컴파일러는 선언된 멤버에 대해서만 aliasname을 사용하고 더 이상 이를 가져오기 별칭으로 인식하지 않습니다.

가져오기 별칭을 선언하는 데 사용되는 구문은 XML 네임스페이스 접두사를 가져오는 데 사용되는 구문과 비슷하지만 결과는 다릅니다. 가져오기 별칭은 코드에서 식으로 사용할 수 있는 반면, XML 네임스페이스 접두사는 XML 리터럴 또는 XML 축 속성에서만 정규화된 요소 또는 특성 이름의 접두사로 사용할 수 있습니다.

요소 이름

element를 제공하는 경우 이는 컨테이너 요소, 즉 다른 요소를 포함할 수 있는 프로그래밍 요소를 나타내야 합니다. 컨테이너 요소에는 클래스, 구조체, 모듈, 인터페이스 및 열거형이 포함됩니다.

Imports 문으로 사용할 수 있는 요소의 범위는 element 지정 여부에 따라 달라집니다. namespace만 지정하면 해당 네임스페이스의 고유하게 명명된 모든 멤버와 해당 네임스페이스 내의 컨테이너 요소 멤버를 한정 없이 사용할 수 있습니다. namespaceelement를 모두 지정하면 해당 요소의 멤버만 한정 없이 사용할 수 있습니다.

예 1

다음 예에서는 DirectoryInfo 클래스를 사용하여 C:\ 디렉터리의 모든 폴더를 반환합니다.

코드에는 파일 상단에 Imports 문이 없습니다. 따라서 DirectoryInfo, StringBuilderCrLf 참조는 모두 네임스페이스로 정규화됩니다.

Public Function GetFolders() As String
    ' Create a new StringBuilder, which is used
    ' to efficiently build strings.
    Dim sb As New System.Text.StringBuilder

    Dim dInfo As New System.IO.DirectoryInfo("c:\")

    ' Obtain an array of directories, and iterate through
    ' the array.
    For Each dir As System.IO.DirectoryInfo In dInfo.GetDirectories()
        sb.Append(dir.Name)
        sb.Append(Microsoft.VisualBasic.ControlChars.CrLf)
    Next

    Return sb.ToString
End Function

예제 2

다음 예에는 참조된 네임스페이스에 대한 Imports 문이 포함되어 있습니다. 따라서 형식은 네임스페이스로 정규화될 필요가 없습니다.

' Place Imports statements at the top of your program.
Imports System.Text
Imports System.IO
Imports Microsoft.VisualBasic.ControlChars
Public Function GetFolders() As String
    Dim sb As New StringBuilder

    Dim dInfo As New DirectoryInfo("c:\")
    For Each dir As DirectoryInfo In dInfo.GetDirectories()
        sb.Append(dir.Name)
        sb.Append(CrLf)
    Next

    Return sb.ToString
End Function

예 3

다음 예에는 참조된 네임스페이스에 대한 별칭을 만드는 Imports 문이 포함되어 있습니다. 형식은 별칭으로 한정됩니다.

Imports systxt = System.Text
Imports sysio = System.IO
Imports ch = Microsoft.VisualBasic.ControlChars
Public Function GetFolders() As String
    Dim sb As New systxt.StringBuilder

    Dim dInfo As New sysio.DirectoryInfo("c:\")
    For Each dir As sysio.DirectoryInfo In dInfo.GetDirectories()
        sb.Append(dir.Name)
        sb.Append(ch.CrLf)
    Next

    Return sb.ToString
End Function

예시 4

다음 예에는 참조된 형식에 대한 별칭을 만드는 Imports 문이 포함되어 있습니다. 별칭은 형식을 지정하는 데 사용됩니다.

Imports strbld = System.Text.StringBuilder
Imports dirinf = System.IO.DirectoryInfo
Public Function GetFolders() As String
    Dim sb As New strbld

    Dim dInfo As New dirinf("c:\")
    For Each dir As dirinf In dInfo.GetDirectories()
        sb.Append(dir.Name)
        sb.Append(ControlChars.CrLf)
    Next

    Return sb.ToString
End Function

참고 항목