When the assembly which contains the properties is compiled, those properties must have a specific type, that's why I don't understand when/why the types of the properties would change without your DLL being able to also change.