如何存储和检索ASP.NET中不可配置的常量?

时间:2009-08-21 15:16:39

标签: c# asp.net constants

类在没有通过web.config获取/存储常量的最佳方法是什么?

4 个答案:

答案 0 :(得分:4)

包含一个包含所有常量的静态类。

public static class MyConstants
{
    public const string MyString = "ConstString";
    public const int TestInt = 100;
    // etc...
}

答案 1 :(得分:4)

将它们作为静态存储在类中,如下所示:

public static class DbConstants
{
    public static const string CustomersTableName = "CUST";
    public static const string ProductsTableName = "PROD";
    ...
}

考虑在几个类中将它们分开以便逻辑地对它们进行分组,例如一个DB常量类,一个异常消息类等等。

答案 2 :(得分:1)

XML文件并使用Application Cache来提高性能,或者您可以使用ASP.NET配置文件。

答案 3 :(得分:1)

这取决于它们是多么“恒定”。 如果它们真的是常量,那是永远不会改变的东西,那么它就是一个带有常量的静态类。例如。数字PI,或者可能是包含表格中字段名称的常量。

如果它们更像服务器,如连接字符串,并且您不想使用web.config,则可能需要查看从web.config中包含新配置文件的选项

<appSettings file="local.config">...</appSettings>

然后local.config应该只包含一个appSettings元素。如果local.config文件不存在,则将被忽略。所以没有例外。 local.config和web.config中都存在任何设置,将使用local.config。然后,您可以在许多安装之间共享Web配置文件,并在local.config中覆盖本地设置。

如果常量超出了超级用户应该能够在运行时修改的内容,那么我会选择数据库中的表。例如。 a如果您让超级用户修改最大密码重试尝试次数等。