var gender = from row in excel.Worksheet() select row["Gender *"].Value.ToString(); string[] genderArray = gender.ToArray().Distinct().ToArray();
in this case, the content of genderArray is {"F", "M", "M"}
I want genderArray to only contain {"F", "M"}
var gender = (from row in excel.Worksheet() select row["Gender *"].Value.ToString()) ; string[] genderArray = gender.ToArray().Distinct().Select(g=>g.Trim()).ToArray();
You can also do .Trim in the first query regarding Value.ToString (). Trim (). Edited: Perhaps I chose a choice in the query.
var gender = (from row in excel.Worksheet() select row["Gender *"].Value.ToString().Trim()) ;
Have you tried to use String.Trim()?
String.Trim()
var gender = (from row in excel.Worksheet() select row["Gender *"].Value.ToString().Trim()) ; string[] genderArray = gender.ToArray().Distinct().ToArray();
Here's how I would handle this:
var data = new List<string> {"F", "M", "M "}; var gender = data.Select(x => x.Trim()).Distinct().ToArray();
Or if you prefer:
var gender = (from x in data select x.Trim()).Distinct().ToArray();