10

Consider we create a partial class in Project1 and we have a Project2 that has reference to Project1 .How is it possible to declare some other method of partial class in Project2 ?

thanks

Tim Rogers
  • 21,297
  • 6
  • 52
  • 68
Arian
  • 12,793
  • 66
  • 176
  • 300

4 Answers4

16

The partial construct is only a compiler functionality, to allow a class to be spread out in several source files. The compiled class still lives in one and only one class library (dll file).

There are two ways to extend a class in another library:

  • Inheritance, unless the class is sealed. This requires that the calling code handles all object instantiation to instantiate the new derived class.
  • Extension methods, which makes the code look like there are new methods on that class, but that is just syntactic sugar. It won't change the class itself.
Anders Abel
  • 67,989
  • 17
  • 150
  • 217
12

It is not possible to extend a partial class in another project. Partial is only compiler sugar. The compiler will create only one class in the resulting assembly.

Wouter de Kort
  • 39,090
  • 12
  • 84
  • 103
3

You can use the Extension methods that allow you to create additional methods for existing class

Sergey K
  • 4,071
  • 2
  • 23
  • 34
2

Partial classes cannot exist out side assembly boundaries!

Numan
  • 3,918
  • 4
  • 27
  • 44