C# 将数据从DB表映射到代码

C# 将数据从DB表映射到代码,c#,sql,asp.net,sql-server,C#,Sql,Asp.net,Sql Server,我有一个设计问题。 我有一个我正在研究的现有系统。 我正在向它添加一个新功能,称为订阅(用于用户订阅) 我有一个表,其中包含订阅类型(各种类型的订阅,为用户提供某些权限) 该表中的每一行都有自己的ID和名称 现在在代码中,我有一个对应于数据库中那些ID的枚举,根据它我知道我正在处理的订阅类型,并据此做出决定 enum SubscriptionTypes{ Silver = 1, Gold = 2 .... } 我的问题是:有没有更好的方法将这些订阅类型(或任何其他“类型表”)映射到代码? 或

我有一个设计问题。 我有一个我正在研究的现有系统。 我正在向它添加一个新功能,称为订阅(用于用户订阅)

我有一个表,其中包含订阅类型(各种类型的订阅,为用户提供某些权限)

该表中的每一行都有自己的ID和名称

现在在代码中,我有一个对应于数据库中那些ID的枚举,根据它我知道我正在处理的订阅类型,并据此做出决定

enum SubscriptionTypes{
Silver = 1,
Gold = 2
....

}
我的问题是:有没有更好的方法将这些订阅类型(或任何其他“类型表”)映射到代码? 或者,因为这些值在DB中不会改变,所以没有问题。 我认为如果我有一些环境有自己的DBs,并且IDs可能会改变,那么这就更相关了


谢谢

也许您可以将订阅的数据保存为json或xml格式,然后进行相应的反序列化。这将使您能够灵活地在将来添加新的订阅类型,而不会更改实际代码。有趣的是,这是一种方法,但我必须告诉您,我在其他任何地方都没有遇到过此解决方案。通常情况下数据保存在某种类型的数据存储中(即使文件是另一个文件)你真的不必将订阅类型的数据存储在文件中,也许你可以将其存储在数据库中的一个表中,也许你可以提供一个UI窗口,让管理员用户编辑这些类型。在内部,你可以将数据存储为JSON或XML。我明白了。所以数据库中的数据会被保存,但会有某种转换器将将ose值转换为我希望在文件中使用的值,并在代码中使用这些值?关于这些ID的整个想法是,它们是从主列表中获取的,因此用户无法更改它们。如果您绝对确定订阅类型的值永远不会更改,则可以将其保留为枚举。也可以将其保留为内部的json文件你的解决方案文件夹,你反序列化这仍然给你的灵活性,以添加新的东西在未来,如果必要的话。