我有两个单独的项目(Dll)。
项目1:包含抽象类。
项目2:在项目1中扩展抽象类的特定具体类。
我希望我的抽象类只能在派生自的类中访问。通常我会使用" protected",但由于它们不在同一个组件中,因此无法使用。
Project 1类应使用哪些访问修饰符?
编辑:类定义EX
namespace all.Animals
{
public abstract class Animal
{
...
}
}
答案 0 :(得分:2)
如果您希望Project1程序集中定义的抽象类仅对Project2程序集中的类可见,请创建这些类internal
,然后在Project1上设置[InternalsVisibleTo]
程序集级别属性。
请记住,可以访问Project1类的程序集已烘焙到此Project1程序集中。因此,如果明天您决定Project3也需要访问这些类,则需要重新编译Project1。