We have a huge set of apps that use a library called Auth.dll. This library is allways is installed in the GAC of our servers.
Now we are refactoring it, so we have split Auth.dll in two new ones
- OAuth.dll
- LegacyAuth.dll
When we deploy the refactored libraries (without recompiling the client apps) we get that they are not able to find the classes, because they have moved from Auth.dll to OAuth.dll. We made a mistake in assuming that respecting namespaces and class design would work
What do we need to do in order to accomplish refactoring Auth.dll, and library code file structure, without needing to recompile client apps?
Is there a better way to accomplish this than to do the following?
We are able to get these three libraries.
- OAuth.dll
- LegacyAuth.dll
- Auth.dll
We use inheritance in Auth.dll to reflect the refactored functionality that now is resides in the other libraries.
Note: Most of the classes that I am moving are structured like this:
public class UserEntity
{
static public UserEntity FindByNif( string nif )
{
UserEntity ent = ....//operations;
return ent;
}
}
They return instances of the class itself