public partial class List : System.Web.UI.Page
protected void Page_Load(object sender, EventArgs e)
CreateList();
private void CreateList()
List
list = new List();
list.Add("Compsognathus");
list.Add("Amargasaurus");
list.Add("Oviraptor");
list.Add("Velociraptor");
list.Add("Deinonychus");
list.Add("Dilophosaurus");
list.Add("Gallimimus");
list.Add("Triceratops");
//循环输出每一项
Response.Write("分别输出每一项:");
foreach (string str in list)
Response.Write(str + ";");
//查找字符串中包含saurus的字符,利用了匿名方法(第一种方式)
List listFind = list.FindAll(delegate(string s){
return s.Contains("saurus");
Response.Write("查找到的字符串为:");
foreach (string str in listFind)
Response.Write(str+" ;");
//第二种方式,这两种方式实际上是等价的
Response.Write("FindAll(EndWithSaurus):");
List subList = list.FindAll(EndWithSaurus);//传入了一个方法名
foreach (string str in subList)
Response.Write(str+" ;");
private bool EndWithSaurus(string s)
if ((s.Length > 5) && (s.Substring(s.Length - 6).ToLower() == "saurus"))
return true;
return false;
开发过程
中
遇到这样的问题,就是checkbox复选框有勾选后进行正常搜索,但是如果没有勾选,则不能进行搜索,且有特殊情况下没有勾选也可进行搜索(lstScopeButton集合
中
包含元素srname属性为"郑州市"的元素)。
结合委托表达式对lstScopeButton集合进行筛选处理,根据
FindAll
()方法得到元素的srname属性为"郑州市"的全部...
List
<Person> person = new
List
<Person>();
private void Form1_Load(object sender,...
//定义一个 Book类型的
List
集合
private static
List
<Book> Books = new
List
<Book>();
//根据委托条件返回符合条件的记录
List
<...
在泛型
List
中
查找符合某个字段的全部数据,可以采用如下方式:
//1.现将实体数据
list
List
<ADDaAn> objDA
List
= db.ADDaAns.To
List
();
//2.在
List
中
使用委托查询
List
<ADDaAn> objSel
List
= objDA
List
.
FindAll
(s => s.d...
利用
FindAll
遍历值时,其对应的字段不可为null,不然会报出未将对象引用到对象实例。
错误
示例
:
List
data =
list
a.
FindAll
(item=>item.a.Equals(b));
这样就会引发未将对象引用到对象实例。
我的处理方法是
List
data =
list
a.
FindAll
(delegate (Item item) { return (string.IsNullOrEmpty(item.a) ? “” : item.a).Equals(b);});
(1) 筛选
List
中
符合条件的项目
var
list
= FormControl
List
.
FindAll
(delegate (FormControlModel obj) { return obj.ColumnName == 'xxx'; });
(2)
List
排序
Warahouse
List
.Sort(delegate (WarehouseModel...
public
List
<T>
FindAll
(Predicate<T> match);
public void Sort(Comparison<T> comparison);
Predicate和Comparison是两个泛型委托。
在C#
中
还有其他的泛型委托如Action,Func,等
FindAll
方法
中
可以在()参数
中
设置自己的过滤方法
先讲So...
/// Redis Key=zgqp315_Redis_ModelNumberC_
List
/// </summary>
/// <param name="SeriesId"></param>
自从认识了
FindAll
(),一般
List
中
查找符合条件的数据项我都用
List
<T>.Find()或
List
<T>.
FindAll
().
代码简洁,自己看了赏心悦目,况且是微软内部的方法,效率应该不会差。
然而,今天心血来潮,写代码测试了一下,确发现
FindAll
()比For循环效率差了好多,集合比较小的时候这差异就更明显了。
测试代码:
Stopwatch w...
publicpartialclass
List
:System.Web.UI.Page
protectedvoidPage_Load(objectsender,EventArgse)
Crea...