我有一个问题,我只是觉得我没有找到令人满意的答案,或者我没有找到正确的地方。
我们的系统最初是使用 .NET 1.1 构建的(但是现在所有项目都支持 3.5),并且所有实体都使用存储过程和具有标准 ExecuteReader、ExecutreNonQuery 类型方法的“SQLHelper”持久化到数据库中。
所以通常发生的情况是我们将拥有我们的实体,例如 User 和 Role,我们将拥有另一个名为 UserIO 的类,它使用以下方法将这些对象持久化到数据库中:
static UserIO.SaveUser(User user)
单独的 IO 文件的原因是使 IO 与实体分开,但是仅仅调用不是更令人满意吗?:
User.Save()
也许我错了,但将这些“IO”文件分散在各处感觉不对。所以我正在考虑寻找其他持久性选项,我想知道从哪里开始最好。我过去使用过数据集,但有一些复杂的经验,尤其是它们的性能。我知道 LINQ 现在已经存在,但我听说我应该使用 ADO.NET Entity Framework 而不是 LINQ,但后来有人告诉我 Entity Framework 不太正确,我应该等待 C# 4.0。如果是这种情况,并且 C# 4.0 即将到来,我是否应该继续我的“IO”文件方法,并在 C# 4.0 最终发布时从实体框架开始。或者我可以使用更优雅的类结构,例如利用部分类?
我应该说,我并没有考虑完全替换已经存在的数据访问,我更关心我正在创建的新实体。
如果这个问题有点笼统,我很抱歉,但是我周围没有很多人可以反弹这种想法。