c#N层体系结构-BL或表示层是否应该知道数据层中的自定义类型

c#N层体系结构-BL或表示层是否应该知道数据层中的自定义类型,c#,n-tier-architecture,C#,N Tier Architecture,我正在创建一个三层解决方案,包括标准项目:DAL、BLL和表示层 my DAL中有一些自定义类型,例如: public class Clients { public int Id {get;set} public string Firstname {get;set;} public string Surname {get;set; } 将此自定义类型从堆栈向上推送到表示层的最佳方法是什么。从我的DAL中引用模型是BL和演示的常见做法吗?或者我应该看看通用接口,以便BLL可以接受/使用列表

我正在创建一个三层解决方案,包括标准项目:DAL、BLL和表示层

my DAL中有一些自定义类型,例如:

public class Clients 
{
public int Id {get;set}
public string Firstname {get;set;}
public string Surname {get;set;
} 

将此自定义类型从堆栈向上推送到表示层的最佳方法是什么。从我的DAL中引用模型是BL和演示的常见做法吗?或者我应该看看通用接口,以便BLL可以接受/使用
列表

经过一番挖掘,DTO似乎是我最好的路线。因此,我将创建一个新项目来保存自定义对象类型,即业务对象。这个项目将依次被我的DAL、BLL和表示层引用。

经过一点挖掘,看起来DTO是我的最佳路线。因此,我将创建一个新项目来保存自定义对象类型,即业务对象。该项目将依次被我的DAL、BLL和表示层引用。

我建议大家看一看,并阅读电子书的架构部分,即使你的应用程序不用于网络。谢谢你,亨克,这正是我需要的:o)我建议大家看一看,并阅读电子书的架构部分,即使你的应用程序不适用于Web。谢谢你,亨克,这正是我所需要的:o)DTO不在此处跳转页面,但你没有详细指定项目类型。为什么你要将“业务对象”放在除BLL之外的任何位置?DTO不在此处跳转页面,但是您没有详细指定项目类型。为什么要将“业务对象”放在BLL之外的任何位置?