在Unity3D中连接WCF服务端
服务端不多讲解,有一处需要改的地方。具体服务端请看WCF入门学习2-控制台做为宿主
建议实际项目不要拿去用,毕竟是mono不是原生.net。或许是个坑
由于Unity的mono版本问题不能直接用net.tcp。用的http绑定方式

====================================
//部分示例代码摘自 无废话WCF入门教程系列
using (ServiceHost host = new ServiceHost(typeof(Service1), baseAddress))
{
//向宿主中添加终结点,这里改成BasicHttpBinding
host.AddServiceEndpoint(typeof(IService1), new BasicHttpBinding(), "");
//将HttpGetEnabled属性设置为true
ServiceMetadataBehavior smb = new ServiceMetadataBehavior();
smb.HttpGetEnabled = true;
//将行为添加到Behaviors中
host.Description.Behaviors.Add(smb);
//打开宿主
host.Open();
Console.WriteLine("WCF中的HTTP监听已启动....");
Console.ReadLine();
host.Close();
}
Step1.先修改一下服务端的绑定方式。因为mono跨平台的关系,默认的绑定方式会报未实现异常。然后运行服务端(保持开着的状态)

Step2.用vs打开Unity项目,添加服务引用。引用地址为刚刚服务端的地址。

Step3.现在还不能直接用,要把mono实现的一些dll载进来。相关dll在上图目录下。Unity安装目录内。拷贝到Unity项目Asset下,任意文件夹下。

Step4.设置Unity Api兼容性为.Net2.0(还是可以用.net 3.5的东西)
void Start () {
Uri tmpUri = new Uri("http://localhost:1234/My");
Service1Client tmp = new Service1Client(new BasicHttpBinding(), new EndpointAddress(tmpUri));
Debug.Log(tmp.GetData());
}
Step5.创建一个Unity的c#脚本。写入连接代码。

OK,测试完成
由于Unity的vs项目是自动生成的,vs只是利用“添加服务引用”自动创建WCF客户端脚本,创建的文件在Asset下,需要手动拖进来,否则重新生成就没了
在Unity3D中连接WCF服务端的更多相关文章
- WCF服务运行一段时间后客户端无法连接WCF服务的解决办法 (转)
WCF服务运行一段时间后客户端无法连接WCF服务的解决办法 (转) Windows Communication Foundation (WCF)是Microsoft为构建面向服务的应用提供的分布式通信 ...
- Wince 中访问WCF服务
由于本文并非WinCE开发普及篇,所以一些WinCE开发和WCF开发的基础还请移步百度和谷歌寻找答案,然后结合本文开发出WinCE中如何访问WCF,谢谢. 开发环境 IDE:Visual Studio ...
- WCF 服务端异常封装
通常WCF服务端异常的详细信息只有在调试环境下才暴露出来,但我目前有需求需要将一部分异常的详细信息传递到客户端,又需要保证一定的安全性. 最简单的办法当然是在服务端将异常捕获后,序列化传给客户端,但这 ...
- WCF服务端开发和客户端引用小结
1.服务端开发 1.1 WCF服务创建方式 创建一个WCF服务,总是会创建一个服务接口和一个服务接口实现.通常根据服务宿主的不同,有两种创建方式. (1)创建WCF应用程序 通过创建WCF服务应用程序 ...
- iPhone中调用WCF服务
本文介绍的是跨平台iPhone中调用WCF服务,WCF是由微软发展的一组数据通信的应用程序开发接口,它是.NET框架的一部分,由 .NET Framework 3.0+开始引入 iPhone中调用WC ...
- Ubuntu下ssh连接在服务端显示图形界面
Ubuntu下ssh连接在服务端显示图形界面 step1 安装ssh服务 服务端安装运行ssh,在终端运行命令如下: sudo apt-get install openssh-server 在客户端安 ...
- Unity使用C#实现简单Scoket连接及服务端与客户端通讯
简介: 网络编程是个很有意思的事情,偶然翻出来很久之前刚开始看Socket的时候写的一个实例,贴出来吧 Unity中实现简单的Socket连接,c#中提供了丰富的API,直接上代码. 服务端代码: [ ...
- WCF服务端调用client.
wcf服务端 1,新建一个"windows窗口程序"名称为WCFServer2. 2.然后加入一个"WCF服务"名称为Service1. 详细步骤为:解决方式试 ...
- SharePoint 2013 中自定义WCF服务
在使用SharePoint2013的时候,如果其他客户端 API 的组合不足,可以通过自定义 Web 服务扩展 SharePoint.默认情况下,SharePoint 2013 不仅支持创建自定义 A ...
随机推荐
- com.esotericsoftware.kryo.kryoexception java.util.ConcurentModificationException
近期 有网友看我的"整合Kafka到Spark Streaming--代码演示样例和挑战"文章, 讲 kafka对象 放到 pool 并通过broadcast广播出去: 然后 在开 ...
- Linux c 管道文件-进程间的通信 mkfifo、pipe
管道文件: 1. 创建管道mkfifo(命名管道) #include<sys/stat.h> int mkfifo( const char *pathname, mode_ ...
- Unix时间戳转换
import time def timestamp_datetime(value): format = '%Y-%m-%d %H:%M:%S' # value为传入的值为时间戳(整 ...
- MariaDB卸载
二进制安装方式的MariaDB卸载 关闭mysql服务 service mysql stop 或 /etc/init.d/mysql stop 或 mysqladmin shutdown -uroot ...
- 【Docker】常用命令
1.查看正在运行的容器 [root@localhost ~]# docker ps CONTAINER ID IMAGE COMMAND ...
- 【重要】新浪微博api研究
# -*- coding: utf-8 -*- #python 27 #xiaodeng #新浪微博api研究 ''' 3.SDK的使用规则: 1)使用微博API,需要通过用户的授权,获取用户的授权码 ...
- 9、java中static详解
一.static关键字的用途 在<Java编程思想>P86页有这样一段话: “static方法就是没有this的方法.在static方法内部不能调用非静态方法,反过来是可以的.而且可以在没 ...
- 原创:【微信小程序】发送消息模板教程(后台以PHP示例)
1.本教程对外开放,未经博主同意,禁止转载. 2.准备材料:1)公众号|小程序,添加选择的模板消息,2)在设置>开发设置页面,开通消息模板功能:如: 3.因为调用微信发送模板的接口是:https ...
- get请求乱码情况
编写一个RegistServlet处理用户的Get请求数据 public void doGet(HttpServletRequest request, HttpServletResponse resp ...
- Notepad++的json 格式化
1. 打开nodepad++ 2. 找到JSON Viewer 点击右上角"安装", 会有提示框安装重启notepad++, 点击ok 3. 自动重启后, 就可以看到 ...