9

是否可以跨项目有部分类。

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

4

4 回答 4

17

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

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

于 2010-01-25T12:56:51.030 回答
1

不可以。必须在相同的上下文(即程序集)中编译部分类。

您可能想要做的是使用Inheritance

于 2010-01-25T12:55:49.413 回答
1

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

于 2010-01-25T12:57:11.650 回答
0

您不能在单独的项目中使用部分类。期间您可以使用扩展类扩展或继承或接口

于 2017-03-28T12:26:05.600 回答