泛型委托在项目中的应用

Action<T> 泛型委托:封装一个方法,该方法只采用一个参数并且不返回值。可以使用此委托以参数形式传递方法,而不用显式声明自定义的委托。该方法必须与此委托定义

的方法签名相对应。也就是说,封装的方法必须具有一个通过值传递给它的参数,并且不能返回值。当然泛型委托不只是只能支持一个参数,它最多可以支持四个参数。

泛型委托与直接显示声明自定义委托的示例比较:
1:显示声明自定义委托:
protected void Page_Load(object sender, EventArgs e)
{
    DisplayMessage delegateMessage = rtString;
    delegateMessage("Hello, World!");   
}
//显示声明自定义委托
delegate void delegateMessage(string msg);
private void rtString(string msg)
{
    Response.Write(msg);    //结果:Hello, World!
}

2.Action<T> 用法。比起自定义委托,明显可以看出代码简洁了
protected void Page_Load(object sender, EventArgs e)
{
    Action<string> delegateMessage = rtString;
    delegateMessage("Hello, World!");
}
//显示声明自定义委托:
delegate void delegateMessage(string msg);
private void rtString(string msg)
{
    Response.Write(msg);    //结果:Hello, World!
}

  

原文地址:https://www.cnblogs.com/sntetwt/p/3502271.html