I assume that an interesting algorithm is to serialize the assemblies that you use, and then at startup you will deserialize your configuration and compare it with the version that each DLL has. Then, after updating the version, you serialize the new version of your configuration and write the name and version of your assembly to your log file or so on.
Keep in mind that the most important thing to consider is getting everyone to do what you need. Nothing else matters. Once he has completed the required work, there may be room for improvement. But first, earn! You will just see what needs to be improved after that.
Will marcouiller
source share