在Release中加载app.config文件
在我的 Visual studio 2008 项目中,我添加了 app.config 文件,在其中以 xml 格式存储一些应用程序数据。
我用这样的代码读取这些数据:
string somedata = ConfigurationSettings.AppSettings["somedatakey"].ToString();
当我在 Visual Studio 中启动应用程序时,它可以工作。但是如果我尝试运行 exe 文件(发布或调试),我会收到错误(如果我对其进行调试,它会在上面的行中中断):
对象引用未设置为 对象的实例。
文件 app.config 不在文件夹内。
In my Visual studio 2008 project, I've added app.config file where I store some app-data in xml format.
I read this data in code like this:
string somedata = ConfigurationSettings.AppSettings["somedatakey"].ToString();
when I start application in Visual studio, it works. But if I try to run the exe file (release or debug) I get error (if i debuf it it breaks on the line above):
Object reference not set to an
instance of an object.
The file app.config is not inside folder.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
app.config 文件与您的 exe 位于同一文件夹中吗?如果没有,请将其复制到那里。
在 Visual Studio 中开始调试会构建所有内容,并将输出(包括 app.config)复制到输出文件夹,从那里启动它。
Is the app.config file in the same folder as your exe? If not, copy it there.
Starting debugging in visual studio builds everything, and copies the output (including app.config) to the output folder, starting it from there.
@Jullin:当您通过按 F5 从 Visual Studio 编辑器运行项目时,CLR 选择 app.config 文件来读取数据,但是当您想从 .exe (bin/debug 或 bin/release)运行项目时,则 clr 读取 applicationName.exe。 config,您必须在调试或发布或访问 applicationName.exe 的任何文件夹中拥有该文件。
就像我有一个名为“WindowsFormApplication”的窗口应用程序,当我在发布文件夹中成功构建它时,我有 WindowsFormApplication.exe 和 WindowsFormApplication.exe.config 以及其他一些文件。因此,请确保您成功发布项目,并且您的发布文件夹必须包含文件。
@Jullin: When you run project from visual studio editor by pressing F5 then CLR pick app.config file to read data but when you want to run project from .exe (bin/debug or bin/release) then clr read applicationName.exe.config, which you must have within your debug or release or any folder from where you access you applicationName.exe.
Like i have a window application named "WindowsFormApplication", when i build it successfully in release folder i have WindowsFormApplication.exe and WindowsFormApplication.exe.config and some other files. so make sure you release project successfully and your release folder must contain files.
从 Exe 运行时,请确保您添加的 app.config 应位于同一目录中
While Running in from the Exe make sure that u have added app.config should be in the same directory