BLL,DAL,BO,插入数据
Posted
技术标签:
【中文标题】BLL,DAL,BO,插入数据【英文标题】:BLL,DAL,BO,inserting data 【发布时间】:2013-05-31 23:11:29 【问题描述】:我需要你的建议。我正在尝试在 ASP.NET 中开发一个将 BBL、DAL、BOboj 分开的 3 层架构。
在 DAL 内部,我通过 _view 收集数据。我想知道,我应该为每个视图编写另一个 BOboj 吗?我已经有一个 BOboj 类,但它不包含所有字段。
插入数据时,我必须使用我的 BOboj,但是,在列出时,我应该创建 BOboj_view 类还是其他什么??
插入数据(我的列只包含那些值)
BOboj
private int _PId;
private string _Name;
private int _ClassId;
列出数据
BOboj_view
private int _PId;
private string _Name;
private string _ClassName;
什么是最好的解决方案,
谢谢。
【问题讨论】:
【参考方案1】:BLL 与表示层对话(ASP.Net 页面) DAL 与数据库对话(SQL、Oracle 等) BO 是 BLL 和 DAL 之间交换的对象。
您不必创建另一个 BO 来列出和添加数据。您可以将同一个 BO 对象用于这两种目的。
参考: http://msdn.microsoft.com/en-us/library/aa581779.aspx
将您想要用于单个对象的所有内容如下所示:
BOboj
private int _PId;
private string _Name;
private int _ClassId;
private string _ClassName;
SqlCommand cmd = new SqlCommand("SPName");
cmd.Parameters.AddWithValue("@PID", obj.PID);
cmd.Parameters.AddWithValue("@Name", obj.Name);
cmd.Parameters.AddWithValue("@ClassID", obj.ClassID);
cmd.ExecuteNonQuery();
【讨论】:
我传递的是对象,而不是像这样的值 productLogic.UpdateProduct("Scott's Tea", 1, 1, null, -14m, 10, null, null, false, 1); 您的问题是“我应该创建 BOboj_view 类还是其他什么??”答案是不”。您可以使用相同的 BO 对象在不同层之间传输数据。 在这种情况下,插入数据时,我不必为“私有字符串_ClassName;”分配任何内容和其他,不会导致冗余或在插入或读取数据时抛出异常?? 如果你在数据插入中没有使用ClassName,你不必担心。查看我的最新答案。 谢谢你的回答。我们在插入数据时做同样的事情。但我的问题不同。看,我有 20 个视图和 40 个类映射到 sql server 中的表,所有视图都收集不同的表(这意味着不同的对象)。除了 40 个之外,我是否应该再创建 20 个类??我希望我能表达自己。以上是关于BLL,DAL,BO,插入数据的主要内容,如果未能解决你的问题,请参考以下文章
DAL/BLL 和客户端/服务器:客户端应该使用 BLL 还是 DAL 对象进行演示?或者可能是另一层(数据传输对象?)