EnumerableExtensionsTryInsertRange(IEnumerable, Int32, IEnumerable, Boolean, Boolean) Method

Tries to insert the specified collection into the target collection.


Namespace: KGySoft.CoreLibraries
Assembly: KGySoft.CoreLibraries (in KGySoft.CoreLibraries.dll) Version: 7.2.0
public static bool TryInsertRange(
	this IEnumerable target,
	int index,
	IEnumerable collection,
	bool checkReadOnlyAndBounds = true,
	bool throwError = true


target  IEnumerable
The target collection.
index  Int32
The zero-based index at which the collection should be inserted.
collection  IEnumerable
The collection to insert into the target.
checkReadOnlyAndBounds  Boolean  (Optional)
to return if the target collection is read-only or the index is invalid; to attempt inserting the collection without checking the read-only state and bounds. This parameter is optional.
Default value: .
throwError  Boolean  (Optional)
to forward any exception thrown by a found insert method; to suppress the exceptions thrown by the found insert method and return on failure. This parameter is optional.
Default value: .

Return Value

, if the whole collection could be inserted into target; otherwise, .

Usage Note

In Visual Basic and C#, you can call this method as an instance method on any object of type IEnumerable. When you use instance method syntax to call this method, omit the first parameter. For more information, see Extension Methods (Visual Basic) or Extension Methods (C# Programming Guide).


The specified collection can be inserted in the target collection if that is either an IListT or IList implementation.

If target is neither a ListT nor an ISupportsRangeCollectionT implementation, then the elements of collection will only be inserted one by one.


Whenever possible, try to use the generic TryInsertRange<T> overload for better performance.


If not every element in collection is compatible with target, then it can happen that some elements of collection have been added to target and the method returns .

See Also