我知道这很奇怪,所以为了让你相信我并帮助我,我在这里提供了很多证据。
问题: Azure 部署期间下的web.config
文件site/1/views
已更改。
事实:
- 该文件存在于
.cspkg
包中,此处不是这种情况 - 没有其他
web.config
被改变,不是根,不是站点 2,3,4.. 中的那个,不是在区域中,不是在任何其他地方。整个解决方案有 10+ 个 web.config 文件,但只有这一个,下面的一个Views
已经site/1
改变。 - 文件没有被替换,被编辑,唯一的变化是
2.0.0.0
->1.0.0.0
和4.0.0.0
to3.0.0.0
,这是有针对性的破坏,我不得不说。没有其他任何改变,我自己定义的命名空间仍然存在。
试过:
- 远程桌面到 Azure 实例,编辑文件,站点工作,即使重新启动后也不会变回(除了在 Azure 界面重新启动,整个包刚刚重新加载)
- 重新打包重新部署,两次,没用。
我对上次部署所做的更改,这是一个成功的部署
- 立即安装 Visual Studio 2012 Ultimate 试用版
- 将整个解决方案从 MVC3 升级到 MVC4,Azure SDK 从 1.0 升级到 1.7
- 把所有项目从framework 4.0改成4.5,发现Azure不支持4.5,改回4.0
- 最终构建并打包
- 整个包在 Visual Studio 2010 下运行良好
- 整个解决方案也适用于本地
图片
pic1web.config
site(1) Views文件夹下的
原始文件
pic2.cspkg
包装
内。
pic3 从远程桌面再次检查
最后的话
我知道有一个解决方案是让 site(1) 为空,一个虚拟站点,所以无论更改什么都无关紧要。或者只是加载我的备份并返回到 VS2010。但我真的很想知道它是如何改变的,以及如何避免它,谢谢。