在创建 n 层解决方案时,我不想公开我的业务对象,而是使用 DTO 来代替它。另一方面,我不想一直重复定义对象并编写复制代码。
现在我的想法是编写包含所有必要字段和属性但没有逻辑(只有状态)的 DTO。
然后我会从那些 DTO 中派生出我的业务对象,用我的业务逻辑扩展它们,处理 DTO 基类属性。这些对象也将是使用的 ORM (NHibernate) 中持久化的对象。
使用这种方法,在服务器端,我可以处理业务对象并将它们直接传递给客户端(它们是派生的,因此可以向下转换)。我不会被迫以这种方式公开我的业务逻辑并节省大量代码。
你觉得这种做法合理吗?
问候,
塞巴斯蒂安