Il riferimento a un membro non condiviso richiede un riferimento a un oggetto

Si è fatto riferimento a un membro non condiviso all'interno del codice, senza specificare un riferimento a un oggetto. Non è possibile usare il nome della classe per qualificare un membro non condiviso. È prima necessario dichiarare l'istanza come variabile oggetto e quindi fare riferimento a essa mediante il nome della variabile.

ID errore: BC30469

Per correggere l'errore

  1. Dichiarare l'istanza come variabile oggetto.

  2. Fare riferimento all'istanza mediante il nome della variabile.

Imports System

Namespace Ecommerce
    Public Class Customer
        Private Property AccountNumber As Integer

        Public Sub New (accountNumber As Integer)
            AccountNumber = accountNumber
        End Sub

        Public Function GetAccountNumber ()
            return AccountNumber + accountNumber
        End Function
    End Class
End Namespace

Module Program
Sub Main(args As String())
        ' Declaring the instance as an object variable:
        Dim firstCustomer As New Ecommerce.Customer(1)
        Dim firstCustomerAccountNumber As Integer

        ' You must not use Ecommerce.Customer.GetAccountNumber() because you
        ' cannot access non-shared Function 'GetAccountNumber' in shared context.
        ' Otherwise, use the instance you've just created to call the function:
        firstCustomerAccountNumber = firstCustomer.GetAccountNumber()
        Console.WriteLine(firstCustomerAccountNumber)
    End Sub
End Module

Vedi anche