【发布时间】:2012-01-31 22:00:38
【问题描述】:
我看到一些人在具有const 属性的类名称Constants 中定义配置(如键、一些静态名称等)。
我知道在as described here这种场景下使用配置文件是最优雅的方式,但是有什么好处呢?我可以假设一定会有性能优势,即使它是一点点。
【问题讨论】:
标签: c# asp.net configuration appsettings
我看到一些人在具有const 属性的类名称Constants 中定义配置(如键、一些静态名称等)。
我知道在as described here这种场景下使用配置文件是最优雅的方式,但是有什么好处呢?我可以假设一定会有性能优势,即使它是一点点。
【问题讨论】:
标签: c# asp.net configuration appsettings
优点是您可以在运行时更改这些值,使用常量您只能在编译时更改值(这意味着如果您需要更改某些内容,则需要重新编译和重新部署)。
我仍然将常量和“常量”类用于我知道在运行时不需要更改的内部设置。这些可以为您节省一点阅读、解析和设置配置类的开销(ConfigurationManager 等)。但是,如果您可能希望在运行时或部署后进行调整,那么节省的性能不值得额外的麻烦(恕我直言)。
【讨论】:
配置文件的优点是您可以在不编译的情况下更改值。
如果值不可能改变,那么使用 const 是有好处的。性能提升可以忽略不计。
【讨论】:
硬编码的常量值被编译;如果以后出于任何原因需要更改它们,则必须打开源代码、重新编译、发布。
如果需要,可以更改文本配置(app.config、web.config、自定义配置文件、数据库),而无需重新编译应用程序的源代码。最糟糕的情况是,您必须重新启动应用程序。
【讨论】: