'<name>' no es miembro de '<classname>'

El miembro proporcionado no es miembro de la clase .

Identificador de error: BC30456

Para corregir este error

  1. Compruebe el nombre del miembro para asegurarse de que es preciso.

  2. Use un miembro real de la clase .

  3. Si está intentando compilar un proyecto de estilo SDK (un proyecto con un archivo *.vbproj que comienza con la línea <Project Sdk="Microsoft.NET.Sdk">) y el mensaje de error hace referencia a un tipo o miembro del ensamblado de Microsoft.VisualBasic.dll, configure la aplicación para compilar con una referencia a la biblioteca en tiempo de ejecución de Visual Basic. De forma predeterminada, un subconjunto de la biblioteca se inserta en el ensamblado en un proyecto de estilo SDK.

    Por ejemplo, en el ejemplo siguiente no se puede compilar porque no se encuentra la Microsoft.VisualBasic.Devices.ComputerInfo.InstalledUICulture propiedad . No está incrustado en el subconjunto del entorno de ejecución de Visual Basic incluido en la aplicación.

    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]
    

    Para solucionar este error, agregue el <VBRuntime>Default</VBRuntime> elemento a la sección de proyectos <PropertyGroup> , como se muestra en el siguiente archivo de proyecto de Visual Basic.

    <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>