action func用法记记
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
public delegate void showMessage(string msg);
public static void showM(string m)
{
MessageBox.Show(m);
}
public string returnM(string m)
{
return m;
}
private void button1_Click(object sender, EventArgs e)
{
//3
showMessage s = new showMessage(showM);
s("xxx");
//1
Action<string> action = showM;
action("123");
//2
Action<string> a = X => showM(X);
a("aaaaaaaaaa");
//6
Action<string> ac = (x1) =>
{
MessageBox.Show(x1);
};
ac("111111111111111");
//6
Action<string> ac2 = delegate(string xx){
MessageBox.Show(xx);
};
ac2("222222222222");
//5
string m1 = "123";
textBox1.Invoke((Action<string>)delegate(string m)
{
textBox1.Text = m;
},m1);
textBox1.Invoke(new Action<string>((x4) =>
{
textBox1.Text = x4;
}), "aaaaax4");
//4 --需要return
Func<string, string> f = returnM;
MessageBox.Show(f("abc"));
//7
Func<string> func = delegate()
{
return "我是Func<TResult>委托出来的结果";
};
MessageBox.Show(func());
//8
Func<string, string> funcOne = delegate(string s3)
{
return s3;
};
MessageBox.Show(funcOne("我是Func<T,TResult>委托出来的结果"));
//9
Func<string, string, string> funcTwo = delegate(string value1, string value2)
{
return value1 + " " + value2;
};
MessageBox.Show(funcTwo("xxx", "我是Func<T,TResult>委托出来的结果"));
//10
Func<string, string, string> ff = (x1, x2) =>
{
return x1 + " " + x2;
};
MessageBox.Show(funcTwo("xxx", "我是Func<T,TResult>委托出来的结果"));
}
{
if (dt == null || dt.Rows.Count == 0)
{
return null;
}
IList<Model> list = new List<Model>(dt.Rows.Count);
foreach (DataRow dr in dt.Rows)
{
list.Add(func(dr));
}
return list;
}
protected void Page_Load(object sender, EventArgs e)
{
if (!this.IsPostBack)
{
DataTable dt = newstable();
IList<Model> list = ToList(dt, delegate(DataRow row)
{
Model m = new Model();
m.f_id =Convert.ToInt32(row["f_id"]);
return m;
});
}
}
static void Main(string[] args)
{
IList<String> list = new List<String>();
list.Add("1");
list.Add("2");
list.Add("3");
list.Add("4");
list.Add("5");
Func<String, bool> f = x => x.Equals("2");
IList<String> list2 = filter(f, list);
}
static IList<String> filter(Func<String, bool> exp, IList<String> list)
{
return list.Where(exp).ToList();
}
}
action func用法记记的更多相关文章
- Action与Func 用法
//vs2017 + framework4.6.2 //zip https://github.com/chxl800/ActionFuncDemo //源文件git https://gith ...
- VS2012 Unit Test(Void, Action, Func) —— 对无返回值、使用Action或Func作为参数、多重载的方法进行单元测试
[提示] 1. 阅读文本前希望您具备如下知识:了解单元测试,了解Dynamic,熟悉泛型(协变与逆变)和Lambda,熟悉.NET Framework提供的 Action与Func委托.2.如果您对单 ...
- (C#) Action, Func, Predicate 等泛型委托
(转载网络文章) (1). delegate delegate我们常用到的一种声明 Delegate至少0个参数,至多32个参数,可以无返回值,也可以指定返回值类型. 例:public del ...
- Lambda Action Func练习
namespace lambda { delegate void TestDelegate(string s); class Program { static void Main(string[] a ...
- Delegate,Action,Func,匿名方法,匿名委托,事件 (转载)
Delegate,Action,Func,匿名方法,匿名委托,事件 (转载) 一.委托Delegate 一般的方法(Method)中,我们的参数总是string,int,DateTime...这些基本 ...
- MVC ---- 理解学习Func用法
//Func用法 public static class FuncDemo{ public static void TestFunc(){ //数据源 List<User> usList ...
- MVC中@Html.Action的用法
MVC项目中如果有公共部分的代码就可以单独拿出来作为控件来用(比如头部和底部代码).跟ASP.NET中的ASCX实现的效果一样,但MVC比它方便的多. 想要实现该效果,需要知道@Html.Action ...
- MVC中@Html.Action的用法(类似自定义控件)
MVC项目中如果有公共部分的代码就可以单独拿出来作为控件来用(比如头部和底部代码).跟ASP.NET中的ASCX实现的效果一样,但MVC比它方便的多. 一.@Html.Action的用法 @Html. ...
- c# Action,Func,Predicate委托
System命名空间下已经预先定义好了三中泛型委托,Action,Func和Predicate,这样我们在编程的时候,就不必要自己去定义这些委托了 Action是没有返回值的 Func是带返回值的 不 ...
随机推荐
- 【230】4T硬盘如何完全利用(GPT)
参考:如何选择超过2T和3T及以上硬盘的MBR与GPT分区形式 新购置的硬盘是 4TB 的,装上后只能用 2TB 的,查明后得知是因为 MBR 只支持 2TB 的(默认情况下是 MBR 分区形式的), ...
- Lisp中编写宏的步骤以及规范
一.编写步骤 1.编写示例的宏调用以及它应当展开的代码,反之亦然. 2.编写从示例调用中生成手写展开式的代码. 3.确保宏抽象不产生"泄露". 二.遵循规则 1.除非有特殊理由,否 ...
- MS SQLSERVER 存儲過程與緩存
提升SQL Server最具性能的一个方面就是存储过程,SQL Server具备执行计划的缓存功能,以便计划重用.SQL Server2000增强了ad-hoc执行计划的缓存功能,就处理存储过程上性能 ...
- oracle+ibatis 批量插入-支持序列自增
首先请先看我前面一篇帖子了解oracle批量插入的sql:[oracle 批量插入-支持序列自增] 我用的ibatis2.0,sqlMap文件引入的标签如下: <!DOCTYPE sqlMap ...
- centos7安装openoffice
[摘要:间接登录openoffice民网下载硬件包,但跳转的页里却不停挨没有开.末了只能正在末端里干活下了: 1. 挑选得当的版本:http://www.openoffice.org/download ...
- linux替换文件指定字符串前面的内容
sed 's/.*user_id/user_id/' wechat_log2 > target_log
- python 模拟登录--day1
---------------edit-in-windows-by-pycharm---------------------import randomuname = "mologa" ...
- JS之BOM、客户端检测和DOM
这是第八章到第十二章的内容,粗略浏览过一遍. 一.BOM 浏览器对象模型.包括了window.location.navigator.screen和history对象. window:核心对象 1.JS ...
- bwa用法
一 建立索引 比对之前,需要对fasta文件构建FM-index索引:bwa index -a bwtsw hg19.fasta 生成 hg19.fasta.amb.hg19.fasta.ann.hg ...
- 初试Nodejs——使用keystonejs创建博客网站1(安装keystonejs)
我正在阿里云上创建一个简单的个人博客网站,刚好正在尝试NodeJs,决定找一款基于NodeJs的CMS来完成这个工作,最后找到了KeyStoneJS. KeyStoneJS是基于Express和Mon ...