为什么设置嵌入到程序集中?

时间:2013-07-01 19:18:03

标签: .net

当项目设置(VS中的项目>属性>设置选项卡)用于存储用户或应用程序设置时,它们存储在assembly.dll.configassembly.exe.config文件中,并且每次都嵌入到程序集中装配建成。

部署之后,用户设置存储在user.config文件中(这对于部署一次性部署来说至少是正确的,我不确定它是由部署的msi或使用标准安装应用程序处理的)以及每当用户更改时设置此值是在运行时存储和检索新值的位置。

现在,所有这些都有意义,但我只是尝试删除已部署应用的app.exe.config文件,之后应用会在启动时崩溃,直到app.exe.config文件恢复后它才会生效。

如果是这种情况,并且当配置文件丢失或调整时应用程序无法使用嵌入式设置,那么首先嵌入设置的重点是什么,是否存在这些嵌入式设置可以达到的任何情况用吗?

1 个答案:

答案 0 :(得分:0)

如果您在单独的程序集中创建用户控件,并在该程序集中进行设置,但是您没有将这些设置复制到主可执行文件的设置中,那么您的应用程序将无法在运行时在其配置文件中找到这些设置。但是,您的用户控件将使用嵌入在程序集中的已编译设置,并且不会崩溃;这是嵌入值有帮助的一种情况。