tnblog
首页
视频
资源
登录

WCF文件配置

3842人阅读 2021/11/25 17:28 总访问:39781 评论:0 收藏:0 手机
分类: .NET
  • WCF添加

 步骤

  1. 新建项目——>C#——>WCF服务应用程序

  • -writ 在.svc后缀文件下

 public string GetData(int value)
        {
 return string.Format("You entered: {0}", value);
        }
//——————————————————————————————————————
public int sum(int a,int b)
        {
//延迟执行
System.Threading.Thread.Sleep(5000);
            return a + b;
        }
  •  配置 在.cs后缀文件下

  [OperationContract]
        string GetData(int value);
        [OperationContract]
        int sum(int a, int b);
        [OperationContract]
  • - 应用

  • 1)新建另外一个项目

  • 2)右键引用——>添加服务引用——>输入地址且确定WCF文件名

 //声明wcf对象
WCF.Service1Client service1 = new WCF.Service1Client();
 //执行wcf事件
int sun = service1.sum(a, b);
MessageBox.Show(sun + "");
  • 异步调用:防止调用时项目出现卡顿

  • 异步方法1:线程

// 创建一个线程
Thread thread = new Thread(() =>
{
 //声明wcf对象
 WCF.Service1Client service1 = new WCF.Service1Client();
 //执行wcf事件
int sun = service1.sum(a, b);
 MessageBox.Show(sun + "");
});
//开启线程
thread.Start();
  • 异步方法2:异步操作关键字:async,await

private async void wcfShowAsync(int a, int b)
{
 WCF.Service1Client service1 = new WCF.Service1Client();
int r = await service1.sumAsync(a,b);
MessageBox.Show(r + "");
}
//事件内调用方法
wcfShowAsync(a,b);
  • 异步方法3:生成异步操作

  • 1)右键所引用的WCF文件

  • 2)单击配置服务引用

  • 3)勾选生成异步操作

WCF.Service1Client service1 = new WCF.Service1Client();
//service1.sum(a, b);
service1.sumAsync(a, b);
//绑定一个回调函数
service1.sumCompleted += Service1_sumCompleted;
//+=后按两次TOP键——>生成如下方法
//接口执行完毕执行
private void Service1_sumCompleted(object sender, WCF.sumCompletedEventArgs e)
{
//数据存储于参数:e 中
     MessageBox.Show(e.Result+"");
}
评价
与其用时间去get一个未知的以后,不如做好现在,set自己一个好的以后
排名
6
文章
6
粉丝
16
评论
8
{{item.articleTitle}}
{{item.blogName}} : {{item.content}}
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2024TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
欢迎加群交流技术