好的,这个让我有点困惑。 我有以下内容:
string csvOfAttributes = CableSolve.Web.Properties.Settings.Default.GenerateBoothReportAttributes;
在我的web.config文件中:
<CableSolve.Web.Properties.Settings>
<setting name="GenerateBoothReportAttributes" serializeAs="String">
<value>327, 329, 330, 369, 342</value>
</setting>
</CableSolve.Web.Properties.Settings>
我有两个关于这个问题的问题:
- 如果我从web.config文件中省略我的设置,我会收到编译错误。这怎么可能?Web.config是可编辑的;我只期望运行时错误。如果我编译我的应用程序、部署,然后用户编辑此设置的名称——那不会破坏已编译的代码吗? - 我可以将此设置存储在web.config文件的appConfig部分中。要访问值,我将通过ConfigurationManager进行访问——如果缺少该设置,我只会在运行时收到空对象。这似乎不太优越,因为我倾向于在编译期间出现错误,但这让我想知道:这两个选项之间的区别是什么,何时应该使用它们?