这个好像、也许、或许、大概、应该、Maybe真的可以算是传说中的面向接口编程了吧。
2014-07-26 09:01
316 查看
这个好像、也许、或许、大概、应该、Maybe真的可以算是传说中的面向接口编程了吧。
假设现在有如下情况,某项目的框架结构用的是ADO.NET写的简单三层。且已经开始写了一部分了。现在因为时间比较紧急,经理认为用EF写速度会快一些,于是要求我们将访问驱动层改成用EF写的。
那么,恩,好吧,我们得改了。先看一下原来DAL层和BLL层的代码。因仅演示而已,此处只写了一个大概思路的代码。另外此处笔者只打算写一个DAL层了BLL层的一个松耦合的一个渐近过程的处理。方法只写一个。诸位见谅。主要是要有那个思路。
BLL层的代码(注意对比)
如果要换访问驱动层的话,请看图:
![](http://images.cnitblog.com/i/532336/201407/260845497911808.jpg)
是的,只需要在如图的位置new一个不同的就好了。且VS会给我们提示。
这个好像、也许、或许、大概、应该、Maybe真的可以算是传说中的面向接口编程了吧。
攻城狮戊说,可是我可能会有很多服务的地方都用到这个实例,那我都得改么?这样写很麻烦的感觉呢。
李宁说过一句话,他说,一切皆有可能。所以,是的,也许以后园子时会多一篇叫做“这个好像、也许、或许、大概、应该、Maybe真的可以算是传说中的简单工厂了吧”的文章。
笔者写的都是很简单的东西。欢迎指正,共同进步。
假设现在有如下情况,某项目的框架结构用的是ADO.NET写的简单三层。且已经开始写了一部分了。现在因为时间比较紧急,经理认为用EF写速度会快一些,于是要求我们将访问驱动层改成用EF写的。
那么,恩,好吧,我们得改了。先看一下原来DAL层和BLL层的代码。因仅演示而已,此处只写了一个大概思路的代码。另外此处笔者只打算写一个DAL层了BLL层的一个松耦合的一个渐近过程的处理。方法只写一个。诸位见谅。主要是要有那个思路。
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using Anmutu.OA.AdoNetDAL; using Anmutu.OA.DAL;//添加EF层的程序集。 using Anmutu.OA.Model; namespace Anmutu.OA.BLL { public class UserService { #region 实现接口后的代码 //IDAL.IUserDal userDal=new UserAdoNetDal();//当要用到ADO.NET作为访问驱动时。 IDAL.IUserDal userDal=new UserEFDal();//当要用到EF作为访问驱动时。 public User AddUser(User user) { return userDal.AddUser(user); } #endregion #region 用EF作为访问驱动层时的代码。 //private DAL.UserEFDal _userEfDal = new UserEFDal(); //public User AddUser(User user) //{ // return _userEfDal.AddUser(user); //} #endregion #region 用ADO.NET作为访问驱动层时的代码 //private AdoNetDAL.UserAdoNetDal userAdoNetDal = new UserAdoNetDal(); //public User Add(User user) //{ // return userAdoNetDal.AddUser(user); //} #endregion } }
BLL层的代码(注意对比)
如果要换访问驱动层的话,请看图:
![](http://images.cnitblog.com/i/532336/201407/260845497911808.jpg)
是的,只需要在如图的位置new一个不同的就好了。且VS会给我们提示。
这个好像、也许、或许、大概、应该、Maybe真的可以算是传说中的面向接口编程了吧。
攻城狮戊说,可是我可能会有很多服务的地方都用到这个实例,那我都得改么?这样写很麻烦的感觉呢。
李宁说过一句话,他说,一切皆有可能。所以,是的,也许以后园子时会多一篇叫做“这个好像、也许、或许、大概、应该、Maybe真的可以算是传说中的简单工厂了吧”的文章。
笔者写的都是很简单的东西。欢迎指正,共同进步。
相关文章推荐
- 这个好像、也许、或许、大概、应该、Maybe真的可以算是传说中的简单工厂了吧
- 这个好像、也许、或许、大概、应该、Maybe真的可以算是传说中的Spring.Net了吧
- 【职场感悟】精确表达,不要说“大概应该maybe也许”
- 设置图片inSampleSize但是内存没变?或许你应该看看这个
- php采集程序,大概应该是这个思路
- 很久没写东西了,好像应该继续下去
- 这个网站好像出现了一个小bug
- 想考试系统分析师么?就来看看这个传说中的希赛四金花和三宝刀吧.
- IPC 和 RPC (呵呵,我感觉我应该要钻研到这个深度啦)
- [FxCop.设计规则]8. 也许参数类型应该是基类型
- "esri/dijit/PopupMobile"这个应该可以在项目中创建一个可移动的窗体
- 也许这几天我应该潜下心来,把动网的那个Blog源程序好好研究一下
- 中文网好像不好找......解决了这个问题后电脑速度明显的快多了(英文是必须要耐心的看下去的)
- Oracle系列:重装WINDOWS系统后,恢复ORACLE 10G 全过程记录(这个真的可以,亲测)
- 今天是老婆的生日,而我却因公出差了,很惭愧,只好写首诗来表达一下了。现在好像已经不兴这个了,有些酸。
- Coreldraw绘画看了这个才算是真正明白了什么叫绘图
- 7.10现在这个点买凡客的衣服应该是最便宜的
- 这个“专题”的导读好像忘了更新了
- 这个算是 VS2010 的 BUG 吗?
- 为什么系统好像可以自动跳出这个while循环