加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 资源网站 > 资源 > 正文

如何在Web上下文中替换OpenExeConfiguration(asp.net mvc 1)

发布时间:2020-12-14 22:23:40 所属栏目:资源 来源:网络整理
导读:好的,所以我们有一些目前正在使用OpenExeConfiguration读取配置文件的东西,但是这在web上下文中运行时不起作用。 我已经尝试了以编程方式打开web.config的各种不同的方法,但我似乎无法让它读取正确的web.config文件。如果重要的是我正在VS 2008中进行调试
好的,所以我们有一些目前正在使用OpenExeConfiguration读取配置文件的东西,但是这在web上下文中运行时不起作用。

我已经尝试了以编程方式打开web.config的各种不同的方法,但我似乎无法让它读取正确的web.config文件。如果重要的是我正在VS 2008中进行调试。

1. config = System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration(System.Web.HttpContext.Current.Request.ApplicationPath);

2. config = ConfigurationManager.OpenMappedExeConfiguration(new ExeConfigurationFileMap { ExeConfigFilename = "web.config" },ConfigurationUserLevel.None);

3. config = System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration("~");

4. config = System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration(null);

5.  System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration(System.Web.Hosting.HostingEnvironment.ApplicationVirtualPath);

它打开错误的配置文件(机器配置或VS /IDE/Web.config)或抱怨错误:

{System.Configuration.ConfigurationErrorsException:加载配置文件时出错:无法映射路径“/”。 —> System.InvalidOperationException:映射路径“/”失败。

编辑 –
好的结合了

config = System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration("~");

并运行Visual Studio 2008 As Administrator工作。我希望我们在部署到我们的Web服务器/客户端环境时不会遇到安全/许可问题!

解决方法

所以最后我用这个代码(不得不处理Web应用程序是运行的,还是我们的单元测试代码正在运行)。
System.Configuration.Configuration config = null;
                    if (System.Web.HttpContext.Current != null && !System.Web.HttpContext.Current.Request.PhysicalPath.Equals(string.Empty))
                        config = System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration("~");
                    else
                        config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);

还必须以管理员模式运行Visual Studio – 我发现您可以将其设置为快捷方式上的属性,因此您不需要记住每次在Windows 7中右键单击并以管理员身份运行:)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读