像pp = pp.OrderBy(p => p.X).ToList()这样的扩展方法哪里有详细的用法讲解尤其是上述OrderBy排序函数的具体用法与其原型如何对应。一个完整例子如下: List<Point> pp = new List<Point>();
pp.Add(new Point(2, 5));
pp.Add(new Point(3, 6));
pp.Add(new Point(1, 7));
pp = pp.OrderBy(p => p.X).ToList();
pp.Add(new Point(2, 5));
pp.Add(new Point(3, 6));
pp.Add(new Point(1, 7));
pp = pp.OrderBy(p => p.X).ToList();
解决方案 »
- 批处理脚本语言Dos
- Cannot read from a closed TextReader
- remoting超级难题
- 如何快速、高效、高质量的开发.net应用程序?
- winform中实现数据的增删改查问题
- 栾姓小女孩今年12月1日出生,求各位叔叔阿姨给想个好名字吧
- 求救!!!大侠们来帮忙啊:如何在datagridview中输入数据?
- 正则问题
- 急!急请高手和版主兄弟们一起探讨做个向windows计划任务那样的程序,能设置程序启动的一些属性?详情请看正文?多请有这方面经验的兄弟加入!
- 控制输入
- datagridview更新的问题
- 100分秒送了!!!为什么我和例图不一样?内附完整代码和图!!!
尤其是p => p.X,这是死规定吗,怎么解释,是否还可以写成其它的形式,包括自己想象的形式
等价于C# codevar t = listTask.Where(m => { return m.ID == task.ParentID }).FirstOrDefault();
等价于C# codeTask t = listTask.Where(delegate(Task t) { return m.ID == task.ParentID }).FirstOrDefault();
等价于C# codeTask t = listTask.Where(new Func<Task, bool>(wheremethod)).FirstOrDefault();
...
bool wheremethod(Task m)
{
return m.ID == task.ParentID;
}
或者等价C# codeTask t = listTask.Where(new Func<Task, bool>(wheremethod)).FirstOrDefault();
...
bool wheremethod(Task m)
{
if (m.ID == task.ParentID) return true; else return false;
}
这也就解释了为什么C# codem => m.ID == task.ParentID
与C# coden => n.ID == task.ParentID
是一样的
因为C# codebool wheremethod(Task m)
{
if (m.ID == task.ParentID)
return true;
else
return false;
}
也可以写成C# codebool wheremethod(Task n)
{
if (n.ID == task.ParentID)
return true;
else
return false;
}
个人认为还是看一下委托,