Answers:
必须在相同的程序集和相同的模块(.exe或.dll文件)中定义所有打算成为同一类型的部分的部分类型定义。部分定义不能跨越多个模块。
不,这是不可能的。编译程序集时,需要完成该类。
尽管其他答案的确提供了令人讨厌的“否”字样,使该页面上的任何人都不想看到或听到,但我被另一个尚未提及的想法所震惊。如果允许跨程序集使用部分类,则可以访问非他编写的现有类型的私有成员,从而允许他以原始作者不希望的方式操纵它们,从而危害所有继承类的功能。太。
不仅如此,还需要重新编译其他程序集(及其子程序)中的那些类,以使其起作用。因此,在逻辑上不可能允许将类拆分为不同的程序集。
要将扩展方法添加到其他dll中的类时,可以使用扩展方法。这种方法的一个缺点是您不能添加静态方法。
问题是,为什么要在另一个程序集中创建局部类?您可以定义跨程序集的抽象类和接口,也许您需要研究一下。
您可能只想在自己的库中,围绕第三部分库中的类创建Wrapper类。然后将任何功能添加到包装器类。