メンバ '<membername>' は共有されているため、オブジェクト初期化子式で初期化できません

更新 : 2007 年 11 月

オブジェクト初期化子を使用して、共有と宣言されているクラスのメンバを初期化することはできません。詳細については、「Shared (Visual Basic)」を参照してください。

エラー ID: BC30991

このエラーを解決するには

  1. クラス定義を調べて、どのメンバが共有されているかを確認します。

  2. オブジェクト初期化子リストから、そのメンバの初期化を削除します。

使用例

次の例では、totalCustomers が共有メンバです。

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

totalCustomers は共有されているので、オブジェクト初期化子リストでその初期値を設定しようとすると、このエラーが発生します。

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

参照

概念

オブジェクト初期化子 : 名前付きの型と匿名型

Visual Basic の共有メンバ

参照

Shared (Visual Basic)