Silverlight与WCF之间的通信(3)利用net.tcp绑定方式寄宿到到控制台交互数据

最近的项目比较紧,写博客的时间基本都用来看文档和视频了,很感谢老大给了这么多时间让我研究 ,好几种方案都被我给毙了,因为有要兼顾其他模块,视频聊天的P2P模式也在silverlight下搞不了,看 了唯一的一个例子居然还是基于LiveMessage的,silverlight快点支持P2P吧!!目前在数据传递方面基 本确定了用WCF来搞定一切,包括聊天,视频和文件传递,不过不能再采用HTTP协议了,改用net.tcp来做 ,直接host到控制台,试了试IIS,但是比较复杂,明天再调试一下将wcf服务host到IIS上。有兄弟说WCF 在文件传递方面不太理想,先出了原型了,后期尽量还是往SOCKET方面靠拢。

先说今天的demo,由于我基本还是逐步进行代码转移的,先做了将服务寄宿到console,并且直接使用 console来做客户端的方式。

服务端的代码都简单写到一个文件中了,还是以前的几个方法,发信息与收信息

public 

class ChatService:IChatService
    {
        private static List<MessageInfo> listMessages = new List<MessageInfo>();
        public void SendMessage(MessageInfo message)
        {
            listMessages.Add(message);
        }
        public List<MessageInfo> GetMessages(string userName, string partnerName)
        {
            var list = listMessages.Where

(m=>m.PartnerName==userName&&m.UserName==partnerName).ToList();
            listMessages.RemoveAll(m => m.PartnerName == userName && m.UserName 

== partnerName);
            return list;
        }
    }
    [ServiceContract]
    public interface IChatService
    {
        [OperationContract]
        void SendMessage(MessageInfo message);
        [OperationContract]
        List<MessageInfo> GetMessages(string userName,string partnerName);
    }

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索string
, 控制台
, public
, message
, username
, net.tcp
寄宿方式
wcf寄宿控制台、webapi 寄宿控制台、wcf 控制台宿主、wcf 控制台、wcf 控制台 https,以便于您获取更多的相关知识。

时间: 2024-10-28 09:40:18

Silverlight与WCF之间的通信(3)利用net.tcp绑定方式寄宿到到控制台交互数据的相关文章

Silverlight与WCF之间的通信(2)利用WCF的双工通信“推送”给SL数据

一,Duplex简介 上一个随笔记录了SL利用Timer定时去WCF上取数据再绑定到界面上的问题,今天尝试用了WCF的Duplex 双工通信来做这个事情,也以这个例子来说明WCF中Duplex的使用. 双工通信的原理很简单,我们平时用的是客户端调用服务端的方法来获取数据,而Duplex是将客户端 也当作了服务器,客户端上的方法也可以被调用,以聊天功能为例子,用户A连接到服务器后,之前的做 法是客户端定时取数据,而Duplex是在服务端定时检测数据变化,如果发现了发送给A的信息,那么立即 会调用客

Silverlight与WCF之间的通信(5)silverlight应用和wcf服务的发布方法

上一篇博文中有朋友问到关于silverlight程序发布的问题,上一篇写的是silverlight访问host在 console上的wcf,其实关于wcf和silverlihgt通信的问题有好几种方式,这里列举了一下 客户端和服务端采用http协议通信(分两种,同域或不同域) 客户端和服务端采用tcp协议通信(分两种,服务端在IIS上,服务端不在IIS上<控制台.windows服务 .winform等等>) 由于方式众多,这里仅就常用的方式进行说明 1,silverlight和wcf在同一个域

Silverlight与WCF之间的通信(4)

silverlight以net.tcp方式调用console上寄宿的wcf服务 (由于最近是针对一个demo进行的研究,在之前公开过代码结构,这里只是对需要改动的地方加以说 明)WCF4.0使得编写wcf服务不再那么复杂,去掉了许多的配置信息,客户端只需要一个服务地址,便可 在系统生成的代理类下做开发了,在部署时也只需要更改引用配置文件的地址即可.但是今天我尝试 silverlight以net.tcp方式连接host到console上的wcf服务时,却颇费周折,一个wcf console ser

Silverlight与WCF之间的通信(1)SL客户端定时请求WCF服务

这几天在做一个Silverlight的页面聊天工具,基本上从头看了一遍Silverlight和WCF相关的东西,也 遇到了不少问题,刚开始是用Silverlight做了定时请求服务器的数据信息,后期准备利用WCF的双工通信 来做,通信过程分为两个部分记录. 一 ,需要建立一个WCF的服务端 这里直接在Silverlight的站点中新建了一个WCF服务,代码如下: //先定义服务契约 [ServiceContract] public interface IChatService { [Operat

Silverlight与WCF之间的通信(6)silverlight+wcf+tcp视频通信[1]单工模式

其实严格来讲,这个实现并非真正意义上的视频通信,既不是P2P的,也没有很高的性能,因为基本上 是两个客户端同时往服务器上传递视频信息,然后由服务器进行中转到对方. 重点在于两点 IIS根目录下放clientaccesspolicy.xml文件 注意服务中定义数据量大小2147483646,否则有可能传递不了 这边是单向的客户端定时向服务器传递带聊天标识的数据流 [DataContract] public class UserVideo { [DataMember] public string U

Silverlight与WCF之间的通信(7) 双工netTcp实现视频对话

效果 先看看效果再说,基本逻辑是两个人通过Silverlight端,借助TCP协议分别向服务器不断传输视频, 服务器接收到视频后,会检测这些视频是发给谁的,然后回调某个客户端来接收并显示这些视频. 实现 双工的服务契约定义 [ServiceContract(CallbackContract=typeof (IChatServiceCallBack))] public interface IChatService { [OperationContract] void SendVideo(UserV

基于Silverlight的本地应用程序之间的通信

通过本地消息传递,您可以在单台计算机上运行的多个 Silverlight 插件之间创建通信通道.您通常 在单个网页中承载这些插件,并且使用本地消息传递来协调其行为.这样,您可以创建将多个基于 Silverlight 的应用程序与基于其他技术的内容结合在一起的复杂布局. 例如,假定您要为基于 HTML 的网站提供基于 Silverlight 的导航系统.您可以使用 Silverlight 来创建菜单栏和侧栏,并且使用本地消息传递来保持其状态同步.另一个方案就是创建具有跨越侧栏广告 的动画效果的基于

VC中利用多线程技术实现线程之间的通信

文章来源:[url]http://www.programfan.com/article/showarticle.asp?id=2951[/url] 当前流行的Windows操作系统能同时运行几个程序(独立运行的程序又称之为进程),对于同一个程序,它又可以分成若干个独立的执行流,我们称之为线程,线程提供了多任务处理的能力.用进程和线程的观点来研究软件是当今普遍采用的方法,进程和线程的概念的出现,对提高软件的并行性有着重要的意义.现在的大型应用软件无一不是多线程多任务处理,单线程的软件是不可想象的.

利用命名管道实现进程之间的通信 .........

  /*   命名管道不仅可以实现 本地进程之间的通信还可以实现网络进程的通信   与油槽不同的是 管道式基于面向连接的可靠的通信 只能一对一传输 数据   我们可以通过      CreateNamedPipe()创建一个管道 ,可以指定模式是双向 即客户端 和服务端都可以进行读写 管道    就跟基于 socket的TCP通信类似   在服务端调用ConnectNamedPipe()来等待客户端连接管道 ,不像函数英文名字那样连接管道 而是等地啊客户端连接的到来     在客户端我们需要调用