如何解决ASP.NET在构建\\\\部署时合并\\\\覆盖多个项目
|| 我有几个ASP.NET MVC Web项目,它们都需要访问同一组配置文件。由于我有多个需要共享的配置文件,因此拥有多个副本是不理想的。 使用Maven3,我可以在构建时将单个J2EE Web应用程序叠加在其他Web应用程序之上,这样我就可以创建一个仅包含配置文件的项目,并将其组合到每个单独的Web应用程序项目中。 是否有任何方法可以使用MSBuild或任何其他.NET构建工具来实现? 我唯一的解决方案是使用构建事件将文件从一个项目复制到另一个项目,但是当通过MSBuild创建部署程序包时,它仅打包项目中的一部分文件,而忽略该文件中的任何其他文件。夹。 我的最终目标是将这些配置文件包含在使用ѭ0生成的部署项目中(希望最终将它们与所需的一切一起部署到IIS7中)。解决方法
我找到了解决问题的方法。
我将配置文件放在某些共享项目的文件夹中。
右键单击配置文件,然后选择属性。
确保构建操作是内容,复制到输出目录是始终复制
从“主项目1”和“主项目2”引用“共享项目”
现在,当构建\“ Main Project 1 \”和\“ Main Project 2 \”时,它们的参考项目(\“ Shared Project \”)也将被构建,并且配置文件将发布到/ bin目录。
要访问这些配置文件:
string configPath = HttpRuntime.BinDirectory + string.Format(@\"ConfigDirectory\\{0}.config\",someConfigFileName );
然后,您可以使用以下命令读取此配置文件(假设其为标准.NET配置格式):
ExeConfigurationFileMap fileMap = new ExeConfigurationFileMap
{
ExeConfigFilename = configPath
};
Configuration config = ConfigurationManager.OpenMappedExeConfiguration(fileMap,ConfigurationUserLevel.None);
var settings = ((AppSettingsSection)config.GetSection(\"appSettings\")).Settings;
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。