如何在发布控制台应用程序后使用App.config文件?——C# VS2013

6

我有一个控制台应用程序,其中包含一些键的App.Config。使用该应用程序的用户需要在运行之前更改某些键的值。

如果我发布我的应用程序,安装后我看不到App.Config。如何添加此功能?

谢谢。


1
你的 App.Config 在发布或编译应用程序后不再被称为 App.config,而是位于 Debug 或 Release 文件夹中的 applications.name..exe.Config - MethodMan
“use” 是什么意思?比如与另一个控制台类型的应用程序共享现有的应用程序? - Explisam
该程序使用SQL,因此连接字符串键必须在app.config文件中更改。 - aramos
2个回答

8

当您发布应用程序时,app.config会被转换为exe.config。打开该文件并进行编辑。

如果您使用了单击一次安装程序安装此程序,则最简单的查找文件的方法是运行该应用程序,打开任务管理器(CTRL-SHIFT-ESC),选择应用程序,右键单击|打开文件位置。然后,您应该在同一文件夹中找到*.exe.config文件。


谢谢Sam,这很有帮助,正是我所需要的。 - aramos
很高兴能够帮助。请将此标记为答案。 - Swazimodo
编辑 appname.exe.config 并保存后,不会影响应用程序。 - PK-1825
@Swazimodo 我怎样才能在不使用 ClickOnce 的情况下发布? - Catarina
@Catarina 我猜你现在已经弄清楚了,但如果还没有,请为此创建一个新问题,因为这超出了本问题的范围。 - Swazimodo
我正在使用Studio 2019,它创建了appname.exe.config.deploy。 - Roland Wales

1
这应该有助于你的理解:

https://msdn.microsoft.com/en-us/library/ms228995.aspx

具体来说,在未使用ClickOnce部署的Windows Forms应用程序(在此情况下可与控制台互换),应用程序的app.exe.config文件存储在应用程序目录中,而user.config文件存储在用户的“文档和设置”文件夹中。在ClickOnce应用程序中,app.exe.config位于ClickOnce应用程序缓存中的应用程序目录中,而user.config位于该应用程序的ClickOnce数据目录中。
简短版本:如果您使用ClickOnce发布选项,请查看这些子文件夹之一-C:\ Users \ UsersNameGosHere \ AppData \ Local \ Apps \ 2.0
除了让您现在运行起来之外,如果您有特定的用户指定值需要在部署后进行修改,则确实应该考虑将它们放入用户设置而不是应用程序设置中。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接