Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Los miembros que se inicializan en una lista de inicializadores de objeto deben ser campos o propiedades. Además, las propiedades de una lista de inicializador no pueden tener parámetros. La propiedad que causa el error está sobrecargada y cada una de sus versiones requiere argumentos. Por lo tanto, la propiedad no se puede inicializar en una lista de inicializadores de objeto.
Identificador de error: BC30993
Para corregir este error
- Quite la propiedad que requiere argumentos de la lista de inicializadores.
Ejemplo
La siguiente clase contiene tres definiciones de propiedad: una para TotalItems y dos para Item, que está sobrecargado.
Class CollectionOfItems
Property TotalItems() As Integer
Get
End Get
Set(ByVal value As Integer)
End Set
End Property
Property Item(ByVal Key As String) As Object
Get
End Get
Set(ByVal value As Object)
End Set
End Property
Property Item(ByVal Index As Integer) As Object
Get
End Get
Set(ByVal value As Object)
End Set
End Property
End Class
La propiedad TotalItems no requiere argumentos y se puede inicializar en una lista de inicialización de objetos, tal como se muestra en la siguiente declaración.
Dim coinCollection As New CollectionOfItems With { .TotalItems = 0 }
La propiedad Item está sobrecargada y cada sobrecarga requiere un argumento. Por lo tanto, Item no puede aparecer en una lista de inicializadores de objeto.
' The following declaration is not valid.
' Dim coinCollection As New CollectionOfItems With { .TotalItems = 0, _
' .Item = aCoinObject }
Para evitar este error, inicialice la propiedad Item fuera del inicializador de objeto.
Dim coinCollection As New CollectionOfItems With { .TotalItems = 0 }
coinCollection.Item(1) = aCoinObject