是否可以在两个项目中声明一个分部类
考虑我们在Project1中创建一个部分类,并且我们有一个引用Project1的 Project2。如何在Project2中声明一些其他的部分类方法?
谢谢
部分构造只是一个编译器function,允许类在几个源文件中展开。 编译后的类仍然只存在于一个类库(dll文件)中。
有两种方法可以在另一个库中扩展一个类:
- inheritance,除非课程被
sealed
。 这要求调用代码处理所有对象实例化以实例化新的派生类。 - 扩展方法,使代码看起来像该类上有新的方法,但这只是语法糖。 它不会改变class级本身。
无法在另一个项目中扩展分部类。 部分只是编译糖。 编译器将在生成的程序集中仅创建一个类。
您可以使用允许您为现有类创建其他方法的Extension方法
部分类不能存在于组装边界之外!