我在数据库(SQL)上有几个查询表,它们是为了实现引用完整性而存在的。这些相同的表在代码中使用枚举表示,因为它周围有业务逻辑。当本地化成为问题时,将本地化表添加到每个实体(包含可本地化字段)。现在正在转换枚举(通过资源文件),但是对于每个查找表也存在本地化表。
我希望得到一些关于如何对这种枚举/查找表关系建模的建议,记住(实体框架5)“查找表”现在有关联的子表,但其目的仍然是在代码中保留枚举。
发布于 2020-11-20 04:01:10
从那时起,我处理房屋清理工作的方式就是
如果枚举不能驱动任何业务决策,我通常不会为它提供枚举。
如果它是驱动某种业务决策的枚举,我通常将其设为标志枚举,数据库条目将包含标志枚举值。通常有一个实际的查找表,其中这些值与标签配对,有时还与额外的元数据配对。
然后,我会使用某种缓存机制预先(或延迟地)加载这些查找表,以便将该枚举转换为UI中的适当标签。
当我有某种类型的元数据时,我要么创建一个包含与枚举相关的所有数据的类,要么创建一个静态类,其中包含枚举的扩展方法,负责提取所述元数据。
例如:
枚举号{一,二,三}
Number.One.GetLabel();Number.One.IsEven()
可以保留一个静态字段,用于在第一次检索后缓存该信息。
https://stackoverflow.com/questions/13497930
复制相似问题