개체 이니셜라이저 목록에서 초기화된 멤버는 필드 또는 속성 중 하나여야 합니다. 또한 이니셜라이저 목록의 속성은 매개 변수를 가질 수 없습니다. 이 오류를 발생시키는 속성은 오버로드되며 해당하는 각 버전에 인수가 필요합니다. 따라서 개체 이니셜라이저 목록의 속성을 초기화할 수 없습니다.
오류 ID: BC30993
이 오류를 해결하려면
- 이니셜라이저 목록에서 인수를 필요로 하는 속성을 제거합니다.
예시
다음 클래스에는 TotalItems 에 대해 1개, Item(오버로드됨)에 대해 2개 등 총 3개의 속성 정의가 포함되어 있습니다.
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
참고 항목
GitHub에서 Microsoft와 공동 작업
이 콘텐츠의 원본은 GitHub에서 찾을 수 있으며, 여기서 문제와 끌어오기 요청을 만들고 검토할 수도 있습니다. 자세한 내용은 참여자 가이드를 참조하세요.
.NET