Der Member '<membername>' kann nicht in einem Objektinitialisiererausdruck initialisiert werden, da er als shared deklariert ist.

Aktualisiert: November 2007

Member '<membername>' cannot be initialized in an object initializer expression because it is shared

Objektinitialisierer können nicht verwendet werden, um Member einer Klasse zu initialisieren, die als shared deklariert ist. Weitere Informationen finden Sie unter Shared (Visual Basic).

Fehler-ID: BC30991

So beheben Sie diesen Fehler

  1. Überprüfen Sie die Klassendefinition, um festzustellen, welches Member als shared deklariert (freigegeben) ist.

  2. Löschen Sie die Initialisierung für dieses Member von der Objektinitialisiererliste.

Beispiel

Im folgenden Beispiel ist totalCustomers ein als shared deklariertes Member.

Public Class Customer
    Public Shared totalCustomers As Integer
    ' Other declarations and method definitions.
End Class

Da totalCustomers als shared deklariert ist, wird dieser Fehler bei dem Versuch verursacht, den Anfangswert in einer Objektinitialisiererliste festzulegen.

' This declaration is not valid.
' Dim cust As New Customer With { .Name = "Coho Winery", _
'                                 .totalCustomers = 21 }

Siehe auch

Konzepte

Objektinitialisierer: Benannte und anonyme Typen

Freigegebene Member in Visual Basic

Referenz

Shared (Visual Basic)