public void Compare() { foreach (var dataType in configuration.DataTypes.Values) { var datatypeDiff = AddDataType(dataType.Configuration); datatypeDiff.Compare(); } foreach (var template in configuration.Templates.Values) { var templateDiff = AddTemplate(template.Configuration); templateDiff.Compare(); } foreach (var docType in configuration.DocumentTypes.Values) { var docTypeDiff = AddDocumentType(docType.Configuration); docTypeDiff.Compare(); } Safe = DocumentTypes.All(t => !t.Value.IsUnsafe) && DataTypes.All(t => !t.Value.IsUnsafe) && Templates.All(t => !t.Value.IsUnsafe); }