The requested page is not available for the requested platform. You are viewing the content for Default platform.

Introduce ForEach Action (C#)

Extracts the content of a foreach loop into a new method, and replaces the loop with an appropriate ForEach method call.

Purpose

This refactoring allows you to make your code more readable by using newer list iteration syntax.

Availability

Available from the context menu or via shortcuts:

  • when the edit cursor is on a foreach statement iterating through a list or an array. The caret has to be on the foreach keyword.

Example

private string TestMethod(List<string> strings)
{
    string TotalString = "Strings";foreach (string str in strings)
    {
        TotalString += String.Format(",{0}", str);
    }
}

Result:

private string TestMethod(List<string> strings)
{
    string TotalString = "Strings";strings.ForEach(delegate(string str)
    {
        TotalString += String.Format(",{0}", str);
    });
}

Screenshot

rsIntroduceForEachAction