0
例如,数据访问层限定:如何使用SQLite在DAL和BLL之间共享类?
public class Customer
{
[PrimaryKey, AutoIncrement]
public int Id { get; set; }
[MaxLength(30)]
public string Name { get; set; }
}
属性被用于映射表使用SQLite
。问题是我需要在BLL中以及在表示层中使用Customer
类。我想隔离DAL实现,以避免将对SQLite
的引用添加到上层。 显然,如果我尝试添加Customer
类的Common.dll
大会未经SQLite
引用,这一问题是SQLite
属性。
我可以创建另一个Customer
类,例如CustomerBase
和值映射从Customer
到CustomerBase
。对我来说这似乎过于单调,特别是因为我管理了许多数据类。
哪种方法可以推荐这个方案?
是之间的映射,这是我在我的问题的最后部分解释。我同意,dtos由DAL和BLL共享,但我认为它们大部分与sqlite实体相同。我管理超过100个dtos,这意味着至少有100个以上的sqlite实体,以及映射每对对象的代码,通常属性为1 = 1。对我来说似乎太乏味了。在我以前使用其他平台的项目中,我可以在我的DAL中“重复使用”dto以创建一个新的导出dto类的sql entiry。现在,因为我需要使用这些属性,所以我无法重用它们。 –