我有一个A类,它有一些受保护的成员,我希望我的基类B可以访问。我也希望B类在A类的命名空间中。这可能吗?
Namespace BLL
Public Class A
Protected varA As Integer
Protected varB As String
End Class
End Namespace
Namespace BLL.A
Public Class B
Inherits A
Public Sub setA()
varA = 3
varB = "test"
End Sub
End Class
End Namespace
然后我希望能够像这样访问B类:
BLL.A.B.setA()
当我这样做时,我收到错误“'A'在名称空间BLL中是不明确的”。我做错了什么?
答案 0 :(得分:2)
A不是命名空间,而是一个类。你必须将B放在A类中。
Namespace BLL
Public Class A
Protected varA As Integer
Protected varB As String
End Class
End Namespace
Namespace BLL
Partial Public Class A
Public Class B
Inherits A
Public Sub setA()
varA = 3
varB = "test"
End Sub
End Class
End Class
End Namespace
我不建议这样做。框架内部很少有类,特别是公共类。但是,我只是互联网上一个随机的人:)
如果你真的想要命名空间,我会重命名类似CarBase的类A,并将其他类放在名为Car的名称空间中。