When accidentally introducing a duplicate data constant (e.g. same as in another package) the system does not start next time producing the following message:
Error occured while loading parameters An item with the same key has already been added. ======================================== An item with the same key has already been added. ------------------------------------------ ======================================== Stack trace ======================================== at System.ThrowHelper.ThrowArgumentException(ExceptionResource resource) at System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add) at System.Collections.Generic.Dictionary`2.Add(TKey key, TValue value) at CZ.Advantages.Asap.Workbench.Services.ParameterService.PrepareParameters() at CZ.Advantages.Asap.Workbench.Services.ParameterService.RefreshParameters() at AsapArchitect.frmMain._schema_SchemaLoaded(Object sender, EventArgs e)
This message does not say which constant was duplicate.
Also it would be much better to warn at the same time when the constant gets inserted.
Although it is sometimes not possible. E.g. when having the constant in my package and a vendor introduces the same constant name in his package I am using. Then an explanatory message when starting the application would be enough.