网站和C/S的Server如何共用DAL?
求解。 --------------------编程问答-------------------- 直接使用了就可以,一般情况下,除了注意数据库连接的方法外,其他的代码完全一样 --------------------编程问答-------------------- 做成一个dll,然后分别引用。 --------------------编程问答--------------------我就是不知道如何直接用……直接引用DAL项目么,这样的话是不是要同时维护两份代码。。。 --------------------编程问答--------------------
好吧……等等看看有没有更好的方法。。。 --------------------编程问答-------------------- 编译成dll,添加引用,选择你的DAL.dll,只维护一个项目即可 --------------------编程问答--------------------
这样的话DBUtility(DBHelper)应该怎么办呢,在server中再写一个? --------------------编程问答-------------------- 晕!你说的所为c/s是什么?是在程序中弄个关系数据库的客户端驱动就叫c/s?那么你又哪来的server呢?
如果不是,如果你有正规的server端,那么客户端就是跟服务器通讯,哪有什么DAL呢?前端根本没有BLL、DAL这种东西,它完全是表现层,顶多再包括一个(薄薄的)通讯网关,而已! --------------------编程问答-------------------- 我经常打一个比方,比如说移动公司的客户端(各种手机)跟另外一个客户端语音通讯,你以为它们之间不是通讯,而是什么客户端把语音内容保存到关系数据库中、然后另外一个客户端到数据库中去搜索语音内容?
如果你满脑子就只有数据库表增删改查,那么设计不了真正的c/s程序。顶多是拿个关系数据库的客户端驱动编个局域网小程序而已。
所以一定要学会设计服务器架构设计,才能懂c/s。 --------------------编程问答--------------------
有正规的server端啊,客户端的移动平台。。。不知道大神还记不记得之前我发的那个socket通信的帖子,你还给我回复了好多,我用的就是你说的命令模式啊……现在我在服务器端已经写好了继承command的业务逻辑了,那么它如何去和数据库通信啊,不就应该是在BLL中调用DAL么? --------------------编程问答--------------------
sorry,刚吃完饭,所以把你的标题看作是“C/S和Server如何共用DAL?”这个了,sorry啊! --------------------编程问答--------------------
--------------------编程问答-------------------- 编写asp.net的程序员,十个中有九个半根本没有开发过c/s程序。asp.net程序员以门槛低、要求水平低而著称。而(早已经跟不上ajax时代潮流的)asp.net程序通常是本地调用关系数据库驱动,并且它的开发人员也并不需要真正去有一个通讯层,因此asp.net程序大多都是直接使用ADO.NET、Linq to SQL、EF等等封装的DAL库对业务数据进行增删改查,不需要自己写什么DAL层。
asp.net的架构并没有突出前后端分离,并不适合作为“三层”的典型。实际上asp.net程序最容易助长“为了三层而三层”的编程,这是因为它不像c/s架构那样清晰。那种从PetShop中学来的所谓三层,在BLL层进行没有做什么操作,反而在DAL层却要自己写一大堆垃圾代码对每一个业务实体对象进行所谓的“增删改查”包装一遍,这种画蛇添足的封装没有必要。
在BLL层中你可以直接调用比较高级的数据库驱动类库,例如现在的MongoDb for .net也支持Linq povider的,那么在BLL中直接调用这种高级的类库,而不一定需要自己些什么低级的DAL代码。 --------------------编程问答--------------------
补充:.NET技术 , ASP.NET