对不起,我不能发布代码,但这里是详细发生的事情。客户端和服务器之间的silverlight通信
用户打开窗体 它添加一个事件监听器等:
GP.GlobalInfo.CommWCF.serviceClient.GetFilteredMessageCompleted += new EventHandler<GetFilteredMessageCompletedEventArgs>(serviceClient_GetFilteredMessageCompleted);
,然后发送一个异步消息发送到服务器,以获得所需的从数据库中的数据。 同时,形式增加了另一个事件侦听器,然后发送另一个消息:
GP.GlobalInfo.CommWCF.serviceClient.GetFilteredMessageCompleted += new EventHandler<GetFilteredMessageCompletedEventArgs>(serviceClient_GetFilteredMessageCompletedAnother);
所以客户端(形式)正在等待要被返回的两个消息。一旦返回消息,表单将在网格中显示数据。
它似乎不工作,因为我期望。不知何故消息卡在某处。所以,我想知道我的方法是否是错误的。
另一种情况是,有我可以点击屏幕上的五个对象。 这五个对象将使用相同的Class创建。 单击一个对象将带有相应数据的表单。 如果我单击第一个对象,表单将添加一个事件侦听器并向服务器发送消息。当表单正在等待数据时,我关闭表单,然后通过单击另一个对象打开另一个表单。 新表单将添加一个事件侦听器并向服务器发送一条新消息。
与此同时,服务器一直在处理第一个表单消息,并将结果返回给第二个窗体..不是第一个窗体(已关闭)。
这就是我现在的经历。 任何人都可以给我一些解决方案,以更好的行为和理解silverlight和WCF。 我想我应该发送停止消息发送到服务器或东西..
-------老问题----------
您好我似乎有一些问题与客户端和服务器之间的通信。
当表单打开时,会打开三个侦听器。每个监听者都可以获得所需的数据。
我认为(不确定)silverlight在卡巴同时使用这三个监听器的时候卡住了。
那么,我应该只使用一个运行在silverlight中的监听器吗? 这么喜欢,
客户要求从服务器
客户要求B数据的数据从服务器 客户节省C数据服务器
这些东西不能在同一时间做了什么? 我是否总是确保客户端和服务器之间的单一通信过程?
感谢
嗯..你可以在一个更具体的方式解释一下你的“听众”的意思,而究竟是什么你的问题。如果你可以提供一些代码,那会更好。可悲的是,现在没有人能够回答你。 – Eilistraee 2010-10-12 17:06:02