【发布时间】:2012-08-02 14:27:24
【问题描述】:
我是 3 层架构的新手,因为它由 UI、BAL 和 DAL 层组成。所以我在 DAL 中编写所有数据库代码,我已经在 BAL 中声明了变量,我已经将方法调用到 UI 中,但这是正确的编码方式吗?我的 BAL 在做什么?业务层的主要目的是什么?谁能解释一下,谢谢。
//In my BAL
public class ProfileMasterBLL
{
public int UserId { get; set; }
public string FormFiledBy { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
}
//在我的用户界面中
ProfileMasterBLL pmBLL = new ProfileMasterBLL();
pmBLL.FirstName = TextBox1.Text;
pmBLL.LastName = TextBox2.Text;
//In my DAL
insert() 方法
那么我该如何调用 ProfileMasterBLL.insert() ?正如我在 DAL 中所写的那样。
【问题讨论】:
-
一个系统必须包含多少逻辑,它包含在哪里,自然取决于系统做了什么。如果您能给我们简要描述您正在创建的内容,那么对此发表评论会更容易一些。这样我们就可以提供更符合您感兴趣的上下文的答案。
-
您的编辑不是三层架构的示例。您拥有似乎是 ADT(一种抽象数据类型)的东西,您应该为这些类型的包创建一个单独的类。然后,您可以使用该 ADT 在您的 BL 和 DAL 中传递。业务逻辑层的属性实际上不应该存在,最多应该只是调用 DAL 的简单方法。
-
当我在谷歌搜索时,我得到了 3 层架构的不同类型的结果,每个人都有自己的实现方式,所以我真的有点困惑。如果你发现任何好的例子,请在这里发布:)