【发布时间】:2012-01-16 13:54:44
【问题描述】:
我正在将 EF (4.2) 添加到现有的 .NET 项目中。
现有的代码库主要依靠ADO.NET调用多个sproc。现在我们正朝着 EF 迈进,我想确保我们以最好、最可维护的方式这样做。
我的问题是当前的 sproc 代码库并不总是返回以它们命名的实体的完整信息:
GetUsersByAdministrator(int adminId)
现有 (sproc) 代码仅返回用户 ID 以及名字和姓氏。
对我来说,这个函数不返回“用户”,并且不应该包含在用户业务逻辑中(如命名)。
对我来说,如果我们给人的印象是一个函数返回一个“用户”但没有返回完整的实体,这似乎很麻烦。
TL;DR
在实现 BLL 时,所有支持的存储过程都应该实现一个完整的实体吗?
例如是否总是需要用户类上的静态方法 GetUsersByXYZ 来返回完整的用户对象?
User.GetUsersByXYZ(int id)
这些函数是否应该更好地位于实用函数的单独程序集中,并将方法重命名为更合适的名称 Util.GetUserIdAndNamesByXYZ?
【问题讨论】:
标签: .net stored-procedures entity-framework-4