In many places in our code we have collections of objects, from which we need to create a comma-separated list. The type of collection varies: it may be a DataTable from which we need a certain column, or a List<Customer>, etc.
Now we loop through the collection and use string concatenation, for example:
string text = ""; string separator = ""; foreach (DataRow row in table.Rows) { text += separator + row["title"]; separator = ", "; }
Is there a better pattern for this? Ideally I would like an approach we could reuse by just sending in a function to get the right field/property/column from each object.
In Java, we can use String. join(",", list) to join a List String with commas.
string s = "a,b, b, c"; string[] values = s. Split(','). Select(sValue => sValue.
List<String> items = Arrays. asList(commaSeparated. split(",")); That should work for you.
string.Join(", ", Array.ConvertAll(somelist.ToArray(), i => i.ToString()))
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With