C#解决Linq OrderBy() 失效的小技巧

前言

前几天的一个数据列表中我用了Linq GroupBy 和OrderBy。 排序在本机正常使用,发到测试后排序死活不对,很是郁闷,总以为是程序问题。于是请教了另外一个同事。有了以下的答案。

问题原因和解决方法

因为服务器装的是英文版操作系统,没有中文包,所以碰见中文排序无法识别,所以使用OrderBy时需要单独处理下。

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();
时间: 2024-10-10 02:04:08

C#解决Linq OrderBy() 失效的小技巧的相关文章

使用LINQ的几个小技巧

这里总结了这些技巧.介绍如何使用LINQ来: 初始化数组 在一个循环中遍历多个数组 生成随机序列 生成字符串 转换序列或集合 把值转换为长度为1的序列 遍历序列的所有子集 如果你在LINQ方面有心得也欢迎在评论中一起分享. 1. 初始化数组 通常,我们需要把数组的值初始化为相同的值或递增的序列值,或者可能是一个步进不为1的递增/递减序列.有了LINQ,我们可以在数组的初始化器中完成所有工作,不再需要循环! 在如下的示例代码中,第一行代码初始化了一个长度为10的数组,所有元素都是-1,第二行代码初

【解决方法】iOS 开发小技巧

1,Search Bar 怎样去掉背景的颜色(storyboard里只能设置background颜色,可是发现clear Color无法使用). 其实在代码里还是可以设置的,那就是删除背景view [[self.searchBar.subviews objectAtIndex:0] removeFromSuperview]; 2,NSDate: [java] view plaincopy 字母  日期或时间元素    表示     示例 G     Era   标志符     Text     

JS 定时提交 以及 保持在网页存在的时候session不失效的小技巧

1 setInterval(function(){ 2 3 $.post("HlsView",{choice:'time',url_name:"",rtsp:"",ZSflg:""}, function(data) { 4 //这里面处理返回的数据 也就是data 5 }, "json"); 6 7 },60000); //延时60秒 单位是毫秒级别的 上面是JS代码,中间的提交方法是JQ的 提交   Hl

解决ie兼容渲染的小技巧

IE浏览器从IE8开始添加了兼容模式,开启后会以低版本的IE进行渲染.在浏览网页时候会出现网页显示问题,于是可以在html中加入以下代码来使IE使用固定的渲染模式: <metahttp-equiv="X-UA-Compatible"content="IE=8"><!--以IE8模式渲染--> <metahttp-equiv="X-UA-Compatible"content="IE=7">&l

iOS小技巧--用runtime 解决UIButton 重复点击问题

iOS小技巧–用runtime 解决UIButton 重复点击问题 什么是这个问题 我们的按钮是点击一次响应一次, 即使频繁的点击也不会出问题, 可是某些场景下还偏偏就是会出问题. 通常是如何解决 我们通常会在按钮点击的时候设置这个按钮不可点击. 等待0.xS的延时后,在设置回来; 或者在操作结束的时候设置可以点击. - (IBAction)clickBtn1:(UIbutton *)sender { sender.enabled = NO; doSomething sender.enabled

解决 SharePoint 2010 拒绝访问爬网内容源错误的小技巧(禁用环回请求的两种方式)

这里有一条解决在SharePoint 2010搜索爬网时遇到的“拒绝访问错误”的小技巧. 首先要检查默认内容访问帐户是否具有相应的访问权限,或者添加一条相应的爬网规则.如果目标资源库是一个SharePoint库,验证一下该帐号是否具有对该SharePoint web应用程序具有至少“完全读取”的权限. 当我在升级上来的SharePoint环境中对我新建的博客URL进行爬网时遇到了这个错误. 这个错误发生在当你运行Windows 2008 R2和SharePoint 2010并且爬网进程试图访问一

给大家分享12个或许能在实际工作中帮助你解决一些问题的JavaScript的小技巧

使用!!操作符转换布尔值 有时候我们需要对一个变量查检其是否存在或者检查值是否有一个有效值,如果存在就返回true值.为了做这样的验证,我们可以使用!!操作符来实现是非常的方便与简单.对于变量可以使用!!variable做检测,只要变量的值为:0.null." ".undefined或者NaN都将返回的是false,反之返回的是true.比如下面的示例: 01 function Account(cash) { 02 this.cash = cash; 03 this.hasMoney

arc下内存泄漏的解决小技巧

一定要注意,我们运行app时,一定要关心内存的使用,尽量不要超过20M,即使有很多图片要显示也绝对不能超过30M.所以运行自己开发的app时多关心内存的使用是个很好的习惯. 对于性能,内存的优化,这个涉及的就太多了.现在先讲讲几个最基本常见的内存泄露下的解决方法. 1. instruments instrument可以报出不少内存泄露的错误,方法:http://www.cocoachina.com/ios/20141203/10519.html,很容易操作. 不过它最大的功能还是可以自己看出哪里

解决CPU占用率搞的小技巧

本文来自e良师益友网 很多人都遇到过笔记本电脑操作系统突然变慢的情况,CPU 资源突然被 100% 占用是原因之一.以下给大家说几个常见高度占用CPU资源的情况及解决办法. 1.病毒和恶意代码 通常病毒和木马程序会占用 CPU 很多资源,如果你的机器感染了病毒或木马程序,CPU甚至瞬间会被占用100%.请使用杀病毒软件或查杀木马软件清理这些病毒和木马程序. 2.IE 浏览器 打开过多 IE 窗体也会占用大量 CPU 资源,建议尽量关闭不必要的网页. 3.高度占用资源的软件 对于普通用户来说 MS