5

我的问题很简单。我有一个第三方库,它假定它将在网站中使用(需要 web.config 中的特殊配置部分)。我想在 C# 控制台应用程序中使用这个库。有可能的?

我已经尝试过 WebConfigurationManager.OpenWebConfiguration(); ,也只是将所有内容复制到 app.config 中,但它不起作用。我收到的错误是 ConfigurationErrorsException 说明 An error occurred creating the configuration section handler for ...: Could not load type 'Configuration.RenderingSection' from assembly 'System.Configuration, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'.

4

2 回答 2

2

您可以通过AppDomain.CurrentDomain.SetData(string name, Object data)设置APP_CONFIG_FILE

string webconfigPath = "whatever......../web.config");
string webconfigDir = Path.GetDirectoryName(configPath);

AppDomain.CurrentDomain.SetData("APPBASE", webconfigDir);
AppDomain.CurrentDomain.SetData("APP_CONFIG_FILE", webconfigPath);

这很容易,您将获得控制台应用程序 (cron) 和 Web 应用程序的相同设置。

于 2014-06-25T21:24:23.863 回答
0

改为使用app.config

与 web.config 完全相同的语法、选项等,但用于控制台和 WinForms 应用程序。

另外,看这里,虽然我还没有测试过,但它似乎对这个人有用。但是,如果您的项目与 web 无关,我仍然建议使用 app.config。

于 2012-11-12T17:05:55.850 回答