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

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

概述好的,所以我们有一些目前正在使用OpenExeConfiguration读取配置文件的东西,但是这在web上下文中运行时不起作用。 我已经尝试了以编程方式打开web.config的各种不同的方法,但我似乎无法让它读取正确的web.config文件。如果重要的是我正在VS 2008中进行调试。 1. config = System.Web.Configuration.WebConfiguration 好的,所以我们有一些目前正在使用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中右键单击并以管理员身份运行:)

总结

以上是内存溢出为你收集整理的如何在Web上下文中替换OpenExeConfiguration(asp.net mvc 1)全部内容,希望文章能够帮你解决如何在Web上下文中替换OpenExeConfiguration(asp.net mvc 1)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1116111.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存