我习惯了 LLBLGen 在基于数据库结构生成对象时给出的布局,这可能会为数据库中的给定“用户”表生成以下类文件:
/EntityClasses/UserEntity.vb
/CollectionClasses/UserCollection.vb
这为数据访问提供了一些基本功能。但是,当您想在此之上实现业务逻辑时,您将如何布局?例如,给定一个可能如下所示的表结构:
USER
userId
firstName
lastName
username
password
lockedOut
如果您想锁定用户怎么办?你会从表示层调用什么代码?您会实例化 UserEntity 类,然后执行以下操作:
User = new UserEntity(userId)
User.lockedOut = true
User.Save()
或者您会创建一个新类,例如 UserHelper (/BusinessLogic/UserHelper.cs),它可能具有 LockOutUser 函数。这会将代码更改为:
UH = new UserHelper()
UH.LockOutUser(userId)
或者您会扩展基本的 UserEntity 类,并创建添加新功能的 UserEntityExt?因此,表示层的代码可能如下所示:
User = new UserEntityExt(userId)
User.LockOutUser()
或者......你会完全做其他事情吗?
您的目录/命名空间结构和文件/类命名约定是什么?