Consider two .net dlls. The first, “application.dll” contains the main business logic and data access code. The second, “webservice.dll” consists mostly of WebMethods that link to objects and methods with application.dll for the purpose of providing webservice calls to existing code.
What changes (e.g. add new classes, add a new field or method to an existing class etc) can and can’t be made to application.dll without requiring a recompile of webservice.dll?
Most things will be fine; some things that will break it:
sealedwhen it was inherited in the second dllstructif the caller uses memberwise initialization rather than constructor initialization(removing includes changing the accessibility to something non-public)