** 3. ** ** Data Access Façade **
讨论 DAF 前,还是先来看段代码:
代码 7 : DAF 是个啥样?
// DafBase :提供大部分应用程序所需的基本 Data Access 支持,
// 包括调用 DAL 方法等 ** **
public abstract class ** DafBase **
{
public ** DafBase ** () { }
protected ** virtual DefBase ** CallDalMethod(
object [] paramsValue)
{
** DefBase ** result = null ;
...
return result;
}
...
}
是不是够 faint 的?所谓的 DafBase 原来就一个方法啊!
不过,从方法名中不难看出,就是通过它,我们才得以调用真
正的数据访问( Data Access Logic )功能,而连接它们的纽带就是上
面已经讨论过的 Data Entity Façade !
试想,如果没有这个 Data Entity Façade ,我们能够很轻易的以一
种统一的方式进行这种调用吗(例如: Data Entity 是 DataTable 或者
XML ,甚至 ObjectSet J )?
或许,有的朋友会说了:那也不难啊,直接使用 object 类型不就可以了?如果真是这样,那么,请您做一个试验就知道这是多么的不切实际( n 多地方需要判断 Data Entity Type 和强制类型转换,这可不同于 implicit operator L )!