Index: Ringtoets/Piping/src/Ringtoets.Piping.Data/RingtoetsPipingSurfaceLineCollection.cs =================================================================== diff -u -r393f18543bc78061b83f61fce09ca094d8fb1a05 -r66b07e7599319ea71ff109d8303f74a4a2e5f71c --- Ringtoets/Piping/src/Ringtoets.Piping.Data/RingtoetsPipingSurfaceLineCollection.cs (.../RingtoetsPipingSurfaceLineCollection.cs) (revision 393f18543bc78061b83f61fce09ca094d8fb1a05) +++ Ringtoets/Piping/src/Ringtoets.Piping.Data/RingtoetsPipingSurfaceLineCollection.cs (.../RingtoetsPipingSurfaceLineCollection.cs) (revision 66b07e7599319ea71ff109d8303f74a4a2e5f71c) @@ -19,36 +19,20 @@ // Stichting Deltares and remain full property of Stichting Deltares at all times. // All rights reserved. -using System; using System.Collections.Generic; -using System.Linq; using Core.Common.Base; -using Ringtoets.Piping.Data.Properties; using Ringtoets.Piping.Primitives; namespace Ringtoets.Piping.Data { /// /// Collection to store . /// - public class RingtoetsPipingSurfaceLineCollection : ObservableCollectionWithSourcePath + public class RingtoetsPipingSurfaceLineCollection : ObservableUniqueItemCollectionWithSourcePath { - private const string separator = ", "; - protected override void ValidateItems(IEnumerable items) { - IEnumerable> duplicateItems = - items.GroupBy(item => item.Name) - .Where(group => group.Count() > 1); - - if (duplicateItems.Any()) - { - var names = string.Join(separator, duplicateItems.Select(group => group.First())); - string message = string.Format( - Resources.RingtoetsPipingSurfaceLineCollection_ValidateItems_RingtoetsPipingSurfaceLine_require_unique_names_found_duplicate_items_0_, - names); - throw new ArgumentException(message); - } + ValidateListOnDuplicateFeature(items, line => line.Name, "Profielschematisaties", "naam"); } } } \ No newline at end of file