'<name>'은 '<classname>'의 멤버가 아닙니다.

제공한 멤버가 클래스의 멤버가 아닙니다.

오류 ID: BC30456

이 오류를 해결하려면

  1. 멤버의 이름을 확인하여 정확한지 확인합니다.

  2. 클래스의 실제 멤버를 사용합니다.

  3. SDK 스타일 프로젝트(줄 <Project Sdk="Microsoft.NET.Sdk">로 시작하는 *.vbproj 파일이 있는 프로젝트)를 컴파일하려는 경우 오류 메시지가 Microsoft.VisualBasic.dll 어셈블리의 형식 또는 멤버를 참조하는 경우 Visual Basic 런타임 라이브러리에 대한 참조를 사용하여 컴파일하도록 애플리케이션을 구성합니다. 기본적으로 라이브러리의 하위 집합은 SDK 스타일 프로젝트의 어셈블리에 포함됩니다.

    예를 들어 다음 예제에서는 속성을 찾을 수 없으므로 Microsoft.VisualBasic.Devices.ComputerInfo.InstalledUICulture 컴파일에 실패합니다. 애플리케이션에 포함된 Visual Basic 런타임의 하위 집합에는 포함되지 않습니다.

    Module Program
        Sub Main()
            Console.WriteLine($"Installed UI Culture: {My.Computer.Info.InstalledUICulture}")
        End Sub
    End Module
    ' Compilation produces the following output:
    '    c:\Projects\ComputerInfo\Program.vb(3,52): error BC30456: 'Computer' is not a member of 'bc30456.My'.
    '   [c:\Projects\ComputerInfo\bc30456.vbproj]
    

    이 오류를 해결하려면 다음 Visual Basic 프로젝트 파일과 같이 <VBRuntime>Default</VBRuntime> 요소를 프로젝트 <PropertyGroup> 섹션에 추가합니다.

    <Project Sdk="Microsoft.NET.Sdk">
      <ItemGroup>
        <Reference Include="Microsoft.VisualBasic" />
      </ItemGroup>
      <PropertyGroup>
        <VBRuntime>Default</VBRuntime>
        <OutputType>Exe</OutputType>
        <RootNamespace>bc30456</RootNamespace>
        <TargetFramework>net472</TargetFramework>
      </PropertyGroup>
    </Project>