【发布时间】:2011-05-06 02:55:36
【问题描述】:
我正在尝试引用与包含此代码的类位于同一文件夹中的此配置文件。我想对它做某种类型的相对引用,所以我可以从其他地方使用它。当我尝试仅使用不带路径的文件名时,应用程序找不到该文件。我调试了它似乎在 IIS 文件夹中查找的文件夹,这很有意义,因为我在 IIS 托管的 wcf 服务中使用它。无论如何,我如何正确引用这个配置文件而不用硬编码路径?所以它看起来在项目位置。谢谢你的帮助。周末愉快!
public void Init()
{
var fileMap = new ExeConfigurationFileMap { ExeConfigFilename = @"C:\workspace\new\UnityDemo-v1.0.0.1\src\Core\unity.config" };
Configuration configuration = ConfigurationManager.OpenMappedExeConfiguration(fileMap, ConfigurationUserLevel.None);
var unitySection = (UnityConfigurationSection)configuration.GetSection("unity");
_container = new UnityContainer().LoadConfiguration(unitySection);
}
干杯,
~ck
【问题讨论】:
-
您不应该在您的
src树中使用该版本。你的配置文件应该设置为“复制到输出目录”,你应该在那里找到(并使用它)。 -
项目中可用的设置功能(并放置在 app.config/web.config 中)是否对您不起作用?在默认情况下,您不必担心查找文件的路径或加载配置。
-
柯克它似乎没有复制。它应该是内容还是嵌入式资源。那我该如何参考呢?谢谢
标签: c# configuration web-config configuration-files