發(fā)現(xiàn)問題
在一個數(shù)據(jù)列表中我用了Linq GroupBy 和OrderBy。 排序在本機(jī)正常使用,發(fā)到測試后排序死活不對,總以為是程序問題。于是請教了別人有了以下的答案。
問題原因和解決方法
因為服務(wù)器裝的是英文版操作系統(tǒng),沒有中文包,所以碰見中文排序無法識別,所以使用OrderBy時需要單獨處理下。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
CultureInfo culture = CultureInfo.GetCultureInfo( "zh-cn" ); List<TeamDto> teamDtos = teams .GroupBy(x => new { x.TestId, x.TestName }) .Select(g => new TeamDto() { TestID = g.Key.TestId, Test = g.Key.TestName, Teams = g.ToList() }) .OrderBy(t=>t.Test,StringComparer.Create(culture, true )) .ToList(); |
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望能對同樣遇到這個問題的朋友們有所幫助,如果有疑問大家可以留言交流。
原文鏈接:http://www.cnblogs.com/sword-successful/p/4912111.html