正 文

用集合程序块来简化数据处理


www.7dspace.com  更新日期:2005-11-28 2:57:06  七度空间


使用集合块(Aggregation block)

这样,到目前为止,我们的例子就有两个数据源了,而且我可以把这两个数据源当作一个数据集(dataset)来使用。现在,是引入集合程序块的时候了。简而言之,我需要在一个特定的配置文件中定义数据源并发出收集数据的异步请求。这个块提供了所有的流水码(piping code)。在请求得到返回之后,我就获得了我所需要的数据集。

这个过程的第一步涉及到了ServiceAgents,它们是与我们的数据源有关的重要信息。这些ServiceAgents是编译到类的码的自定义位,它们实现了IServiceAgent,因此知道如何访问数据源。这里,ServiceAgent类应该包含实现访问SQL Server和调用Web服务这两个功能所需的代码。

AggregationConfig文件保存了部件(assembly)、类的名称以及安全信息(可选)。一旦客户端应用程序获知ServiceAgents在哪儿被锁定,我就可以用AddRequest方法来产生异步调用。

上述过程构思起来很简单,但是需要编写大量的代码。我们需要把ServeiceAgents代码作为中间件来设计,而且还需要为每一个客户设置一个配置文件,还有,系统中必须设计好异步调用机制。一旦中间层开发完毕,实现起来就很简单了。

使用集合(aggregation)的建议

集合除了有集成的问题之外,还有XML Web服务、数据库访问、文件系统的问题以及任何其它你想插入的东西的问题。Web服务不太可靠,如果你集合了Web服务,那么如果Web服务出问题时你的系统也就会出问题。即使经过大量的错误处理,也会有很多潜在的缺陷。

不过,集合仍可以在两种场合下适宜使用。第一种场合就是在你没有其它选择的时候。例如,当你所需的数据保存在主机(mainframe)种,而且主机不能移动,而且你也不能做其它什么事。现在,至少你不必每天都需要拷贝它——只需要合计即可。第二种适合使用集合的场合就是开发非关键、允许失败的应用程序的时候,例如我们上面所提到的天气预报系统。如果它出现问题,销售员只需要打个“时间和天气”服务电话就可以解决问题了。

2页,页码:[1] [2] 

上一篇:用.NET Caching Application Block简化数据缓冲
下一篇:QQ空间最新挂件代码及其使用方法
作者:  来源:开发者在线 ( 责任编辑:7dspace )
收藏此页】【打印】【关闭
站 内 搜 索
 

热 点 导 读
特 别 推 荐