Свойство <имяСвойства> невозможно инициализировать в выражении инициализатора объектов, так как все доступные перегруженные версии требуют аргументов
Обновлен: Ноябрь 2007
Property '<propertyname>' cannot be initialized in an object initializer expression because all accessible overloads require arguments
Члены, инициализируемые в списке инициализатора объектов, должны быть либо полями или свойствами. Кроме того, свойства в списке инициализатора не могут иметь параметров. Вызвавшее эту ошибку свойство перегружено, и все его версии требуют аргументов. Таким образом, свойство не может быть инициализировано в списке инициализатора объектов.
Идентификатор ошибки: BC30993
Исправление этой ошибки
- Удалите свойство, для которого требуется аргумент, из списка инициализатора.
Пример
Следующий класс содержит три определения свойств: одно для TotalItems и два для Item, которые перегружаются.
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
Свойство TotalItems не требует аргументов и может быть инициализировано в списке инициализатора объекта, как показано в следующем объявлении.
Dim coinCollection As New CollectionOfItems With { .TotalItems = 0 }
Свойство Item перегружено, и каждая перегрузка требует аргумент. Таким образом, Item не может появляться в списке инициализатора объектов.
' The following declaration is not valid.
' Dim coinCollection As New CollectionOfItems With { .TotalItems = 0, _
' .Item = aCoinObject }
Чтобы избежать этой ошибки, инициализируйте свойство Item вне инициализатора объектов.
Dim coinCollection As New CollectionOfItems With { .TotalItems = 0 }
coinCollection.Item(1) = aCoinObject
См. также
Задачи
Практическое руководство. Вызов процедуры Get свойства
Основные понятия
Инициализаторы объектов: именованные и анонимные типы
Свойства, используемые по умолчанию