private string Run <T>(IEnumerable <T> items, IObjectSerializer <T> serializer) { // ... Code var headers = serializer.SerializeHeaders(items); // ... Code foreach (var item in items) { var values = serializer.SerializeValues(item); // ... Code } // ... Code }