C# 引用另一个配置文件

C# 引用另一个配置文件,c#,asp.net-mvc,C#,Asp.net Mvc,我在一个解决方案中有两个项目。 项目A:MVCWeb应用程序(web.config) 项目B:控制台应用程序(app.config) 我想访问主Mvc项目的web.config文件,因为console应用程序将进行一些数据传输,需要在web.config文件中进行一些设置。我想引用app.config中的web.cong文件,因此如果我们更改配置,我就不必将新代码复制到app.confg中,我想这是您正在寻找的 为了完整起见,我在此引用该答案的相关部分: VirtualDirectoryMapp

我在一个解决方案中有两个项目。 项目A:MVCWeb应用程序(web.config) 项目B:控制台应用程序(app.config) 我想访问主Mvc项目的web.config文件,因为console应用程序将进行一些数据传输,需要在web.config文件中进行一些设置。我想引用app.config中的web.cong文件,因此如果我们更改配置,我就不必将新代码复制到app.confg中,我想这是您正在寻找的

为了完整起见,我在此引用该答案的相关部分:

VirtualDirectoryMapping vdm = new VirtualDirectoryMapping(@"C:\test", true);
WebConfigurationFileMap wcfm = new WebConfigurationFileMap();
wcfm.VirtualDirectories.Add("/", vdm);

// Get the Web application configuration object.
var config = WebConfigurationManager.OpenMappedWebConfiguration(wcfm, "/");
这是假设您在名为C:\Test的目录中有一个名为web.config的文件

您还必须引用System.Web和System.configuration以及任何包含在Web.config中设置的配置处理程序的DLL


这听起来是个坏主意。为什么不能在app.config文件中创建设置?这两个应用程序需要相互了解有什么原因吗?(我个人会将它们分开,除非你有一个非常令人信服的理由不这样做)MVC项目有一些数据,比如:连接字符串、成员资格和角色管理器信息,以及我认为应该参考的一些其他信息,而不是从MVC项目复制的信息,因此如果连接字符串在发布前发生更改,我不必复制代码,而且如果他们忘记告诉我他们做了更改,我也不必担心,因为它会查看引用的配置文件