最佳实践查找表(GetOrCreate)

时间:2012-11-28 17:26:33

标签: c# entity-framework

首先,我想用几句话来解释我的情况: - 我有一些,我称之为查找表。这意味着我希望那里的所有值都是唯一的。例如,具有名称和GUID的CPU模型的查找表。

public partial class CPUModel : EntityObject
{
    public Guid Id {}
    public String Name{}
}
  • 在Entity Framework和C#
  • 的帮助下,实体在SQL CE数据库中安全
  • 我制作了一个CRUDManager,帮助我选择,插入,更新和删除实体。
  • 所有这些操作都与ReaderWriterLockSlim一起使用,以防止多线程出现问题。

现在应该有一些GetOrCreate方法,我可以说GetOrCreate(cpuModelName),这给了我一个已经存在或新创建的已保存的CPUModel。此方法也适用于ReaderWriterLockSlim。

所以我想在CRUDManager上实现这个方法。 你认为我是在正确的轨道上还是你将它直接放在CPUModel上(甚至是其他地方?

非常感谢:)

2 个答案:

答案 0 :(得分:1)

CRUDManager是个好地方。我只是查看值(理想情况下通过Lookup()类型函数,如果存在,请选择它。如果不存在,请调用Create()或您定义的任何函数来创建它。

答案 1 :(得分:0)

听起来你想要一本字典。我建议阅读here