WCF和委托

     WCF各个模块的联系:

  • Contracts一个类库项目,定义服务契约(Service Contract),引用System.ServiceMode程序集(WCF框架的绝大部分实现和API定义在该程序集中);
  • Services一个类库项目,提供对WCF服务的实现。定义在该项目中的所有WCF服务实现了定义在Contracts中相应的服务契约,所以Services具有对Contracts项目的引用;
  • Hosting一个控制台(Console)应用,实现对定义在Services项目中的服务的寄宿,该项目须要同时引用Contracts和Services两个项目和System.ServiceMode程序集;
  • Client一个控制台应用模拟服务的客户端,该项目引用System.ServiceMode程序集。

 

    委托的创建步骤:

  • 用delegate关键字创建一个委托,包括声明返回值和参数类型
  • 使用的地方接收这个委托
  • 创建这个委托的实例并指定一个返回值和参数类型匹配的方法传递过去

 

Action<double, double> printProduct = (x, y) => { Console.WriteLine(x * y); };

Func< double [],  double [],  double > dotProduct = (x, y) =>
{
     var  dim = Math.Min(x.Length, y.Length);
     var  sum = 0.0;
     for  ( var  i = 0; i != dim; i++)
         sum += x[i] + y[i];
     return  sum;
};
 
  • 如果只有一个参数,不需要写()
  • 如果只有一条执行语句,并且我们要返回它,就不需要{},并且不用写return
  • Lambda可以异步执行,只要在前面加上async关键字即可
  • Var关键字在大多数情况下都不能使用

转载于:https://www.cnblogs.com/HF520134/p/4651327.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值