我无法从Silverlight业务应用程序中的代码中获取查询结果

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我无法从Silverlight业务应用程序中的代码中获取查询结果相关的知识,希望对你有一定的参考价值。

关于你的书“使用Silverlight 4的专业商务应用程序”,有些东西让我很累。我正在谈论从代码中获取查询结果。假设您正在使用WCF RIA服务,由于服务器和客户端之间的异步机制,您总是得不到任何结果。我试过使用这样的BusyIndi​​cator(VB),但它不起作用:

dim ctx as new DomainService1
dim query= from p As Entity1 In Ctx.GetQueryEntity1Query select p 

If ctx.IsLoading = True Then
   BusyIndicator1.IsBusy = True
   Else
   BusyIndicator1.IsBusy = False
End If

如何在服务器完成加载操作之前停止程序?

答案

您需要使用DomainContext类的Load-Method加载实体。此方法需要调用查询并指定要加载的实体。 Load-Method返回LoadOperation的一个实例,您可以使用它来检查实体的负载是否已经为finshed并访问已加载的实体。

尝试更新您的代码如下:

dim ctx as new DomainService1
dim query= ctx.GetQueryEntity1Query
dim loadOperation = ctx.Load(query)

loadOperation.Completed += LoadCompleted
BusyIndicator1.IsBusy = True

Private Sub LoadCompleted(sender as object, e as EventArgs)
   BusyIndicator1.IsBusy = False
end Sub

以上是关于我无法从Silverlight业务应用程序中的代码中获取查询结果的主要内容,如果未能解决你的问题,请参考以下文章

缺少 Silverlight“业务应用程序”模板

Silverlight 中的十进制转换器无法正确处理丢失焦点

如何将现有的业务层实施到 SilverLight 4.0 应用程序?

从Silverlight使用Windows Azure Service Bus

Silverlight 业务应用程序 - 文件大小

从Silverlight调用Javascript函数