构建winforms C#解决方案
所以我正在重新组织一个
winforms C#解决方案,以帮助解耦并使其更清洁,更有条理.该解决方案可跟踪小型业务订单等. .
到目前为止,我已经完成了这些项目 App.View – 所有GUI相关代码 我有一些课程,我无法弄清楚他们属于哪里.请让我知道您对每个课程应该去哪个项目的想法,或者是否有另一个项目应该为此创建. >从数据库中检索用户首选项的类 解决方法
实际上,我认为你有一些传统的分层架构.通常,应用程序处理的数据模型将与业务层一起保存在业务层中.您的数据层将包含持久性框架的数据模型和与该框架交互的代码.我认为这可能是您的课程建议位置与您根据自己的评论对此做出反应之间混淆的根源.
从这个角度来看,任何检索或带来的东西都必须位于您的数据层中 – 它正在访问持久存储中的数据.它检索的内容最终会转换为业务逻辑操作的业务层对象.事物是概念模型 – 如订单表 – 或业务操作属于业务层.我同意@Adron,也许同样对于(3)取决于它实际是什么的混淆. 进一步来说: >用户首选项是业务 [编辑]我针对(简单)网络应用程序的通用3层体系结构 DataAccessLayer 这将包括我的TableAdapter和强类型的DataTables和Factories,它们将我的DataTables行转换为LINQ前项目中的业务对象.使用LINQ,这将包括我的DataContext和设计器生成的LINQ实体. BusinessLayer 这将包括任何业务逻辑,包括验证和安全性.在LINQ之前,这些将是我的业务对象和实现应用程序逻辑的任何其他类.使用LINQ,这些是我的LINQ实体的部分类实现,用于实现安全性和验证以及任何其他类来实现业务逻辑. 介绍 这些是我的网络表单 – 基本上是应用程序的UI.我确实在表单中包含了一些验证逻辑作为优化,尽管这些也在BL中得到验证.这还包括任何用户控件. 注意:这是逻辑结构.项目结构通常反映了这一点,但是在某些情况下,例如与Web服务的连接,可能直接包含在Web项目中,即使逻辑上组件实际上在BL / DAL中. 注意:一旦ASP.NET MVC投入生产,我可能会转向3层MVC.我在Ruby / Rails中完成了一些个人项目,我非常喜欢用于Web应用程序的MVC范例. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |