跨项目的部分类

时间:2010-01-25 12:53:45

标签: .net mvvm projects

是否可以跨项目进行部分课程。

e.g。项目1有一个客户类。 Project2是一个可选模块,它通过附加订单类并使用原始客户类来添加到客户类。

4 个答案:

答案 0 :(得分:16)

您不能使用partial关键字在项目之间拆分类的代码。 partial关键字是编译器技巧;编译器将从它找到的部分中输出一个单独的类,因此该类的所有部分必须存在相同的二进制文件。一旦编译了类,就没有任何痕迹可以作为部分类。

如果要扩展现有类,您需要继承它(如果它没有被密封),或者创建自己的新类,其中包含您希望组合信息的类。

答案 1 :(得分:1)

没有。必须在同一上下文中编译分部类,即汇编。

您可能想要做的是使用Inheritance

答案 2 :(得分:1)

部分类完全是一个编译器构造 - 它基本上将类定义连接在一起,然后编译它。 .net中没有“部分类”的概念,因此您无法跨不同的编译单元(项目或程序集)拆分部分类

答案 3 :(得分:0)

您不能在单独的项目中使用部分类。但是,您可以使用扩展Class Extensions或继承或接口