戻り値の型にアクセスできないため、このコンテキストでは '<methodname>' にアクセスできません
更新 : 2007 年 11 月
呼び出しステートメントにアクセスできない戻り値の型を持つ関数を呼び出しています。たとえば、次のコード例では、戻り値の型 PrivateType が TestClass クラス内の Private アクセス修飾子で宣言されているため、Main から PublicMethod への呼び出しが失敗しています。この場合、PrivateType にアクセスできるコンテキストは、TestClass に制限されています。
Class TestClass
Dim pT As New PrivateType
Private Class PrivateType
End Class
'' A corresponding error is returned in this line: 'PublicMethod
'' cannot expose 'PrivateType' in namespace 'ConsoleApplication1'
'' through class 'TestClass'.
'Public Function PublicMethod() As PrivateType
' Return Nothing
'End Function
End Class
Module Module1
Sub Main()
Dim tc As TestClass
'' This error occurs here, because the data type returned by
'' PublicMethod()is declared Private in class TestClass and
'' cannot be accessed from here.
'Console.WriteLine(tc.PublicMethod())
End Sub
End Module
Error ID: BC36665 および BC36666
このエラーを解決するには
型定義にアクセスできる場合は、アクセス修飾子を Private から Public に変更します。
関数の戻り値の型にアクセスできる場合は、これを変更します。
アクセス可能な型を返すメソッドまたは拡張メソッドを記述します。