• 全部
  • C#综合技术
  • C#互联网桌面应用
  • AppLauncher
  • WinForm&WPF
  • C#开发新技术
  • 问答

诚问组件分割问题

yanghant74 2004-11-06 08:02:36
有一个课题我打算分割为:“主项目”、“连接数据库组件”、“导入/导出数据库组件”、“录入/删除/修改数据库组件”、“查询数据库组件”。
其中:“主项目”引用“连接数据库组件”、“导入/导出数据库组件”、“录入/删除/修改数据库组件”、“查询数据库组件”。
且:“导入/导出数据库组件”、“录入/删除/修改数据库组件”、“查询数据库组件”分别引用“连接数据库组件”。
问:这样做可否?
若这样做不行,应该如何做?

请诸位高手指点迷津。(顶者有分)
...全文
72 点赞 收藏 10
写回复
10 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
river723 2004-11-07
好象一般分层不这么分,如果按楼主的分法,好象是按业务功能分的,没必要分出个“连接数据库组件”,直接把连接放在各"组件"里,但要分也可以,其它各"组件"都引用“连接数据库组件”就行了.
唉,比较乱.
回复
yanghant74 2004-11-07
up
回复
yanghant74 2004-11-07
谢谢以上大家的发言。
再问一句:哪里有有关这个问题的书或文章可看啊?
回复
rroo 2004-11-07
我们一般是这样做,
首先,写一个通用的数据库访问组件,比如就叫DataOperator , 所有数据库操作功能都封装里面,这个组件根据配置不同,应该要可以兼容大部分数据库,比如:SqlServer , Oracle, MySQL等(你可以用OleDB来做).
其次,将所有不同的系统的业务逻辑分别封装在不同的组件中,数据库操作部分则完全通过调用数据库访问组件,业务逻辑只要提供相应的参数即可,最好业务逻辑组件也能有相同的格式,可以便于团队的合作开发,这样在提高代码重用率,而且地层代码发生错误,便于全局修改.
这样做有一个明显的好处就是不同系统的业务逻辑在其他系统中调用的条件只要有数据库访问组件和业务逻辑组件就可以了.
回复
zhongwanli 2004-11-07
是呀,你的包(组件)的分配就有问题,

而且,你是做三(多)层架构吗,为什么主项目要去引用

“连接数据库组件”、“导入/导出数据库组件”、“录入/删除/修改数据库组件”、“查询数据库组件”。



回复
tonybaobao 2004-11-07
一般分层的话,3层差不多了。即BLL业务逻辑层,DAL数据访问层和表示层。你可以在层里面分各个不同的类,但他们应该同属于一个namespace。具体的例子可以看看MSPetShop,微软网上有下载的。
回复
思归说中文了?

回复
saucer 2004-11-06
主意是看依赖性与分层问题,为什么要分这么多数据库组件?你的组件的概念是不同的项目么?你的逻辑层呢?

“导入/导出数据库组件”、“录入/删除/修改数据库组件”、“查询数据库组件”把数据库的访问东西都包装在“连接数据库组件”里么?
回复
yanghant74 2004-11-06
难道没人会吗?
回复
Alden 2004-11-06
不会,帮你顶
回复
发帖
C#
创建于2007-09-28

10.5w+

社区成员

.NET技术 C#
申请成为版主
帖子事件
创建了帖子
2004-11-06 08:02
社区公告

让您成为最强悍的C#开发者