C# 将web应用程序部署到Windows Azure时更新Javascript库

C# 将web应用程序部署到Windows Azure时更新Javascript库,c#,jquery,asp.net-mvc,azure,mercurial,C#,Jquery,Asp.net Mvc,Azure,Mercurial,我有一个MVC4 web应用程序,它使用jquery和一些其他LIB(jquery ui) 昨天我决定通过NuGetpackagemanager更新所有包;我的web应用程序在本地计算机上正常工作,但当我将其部署到azure网站时,浏览器中弹出了一个javascript错误(它与jquery ui库相关,类似于“$browser不是函数”) 我在网上搜索,发现这个错误的原因是我仍然在使用旧版本的jquery。看来部署过程并没有发布新版本的js库,即使它们已经在本地项目中更新了 我解决了通过RDP

我有一个MVC4 web应用程序,它使用jquery和一些其他LIB(jquery ui

昨天我决定通过NuGetpackagemanager更新所有包;我的web应用程序在本地计算机上正常工作,但当我将其部署到azure网站时,浏览器中弹出了一个javascript错误(它与jquery ui库相关,类似于“$browser不是函数”)

我在网上搜索,发现这个错误的原因是我仍然在使用旧版本的jquery。看来部署过程并没有发布新版本的js库,即使它们已经在本地项目中更新了

我解决了通过RDP连接Azure机器、删除“脚本”文件夹的内容并再次部署的问题,但我想知道在部署到Azure时是否有办法“强制”更新脚本/库


编辑1:我正在使用VisualStudio2012进行开发,使用Mercurial作为源代码管理提供程序



编辑2:我正在部署到Azure网站

请在您将来的问题中明确指出您使用哪种类型的Azure服务。MVC4 web应用程序可以部署到3种不同类型的服务:Azure网站、Azure云服务、Azure虚拟机

因为您正在谈论RDP,所以可行的选择是云服务或虚拟机。但是你说

我解决了通过RDP连接Azure机器的问题,删除 “脚本”文件夹的内容并再次部署,但我 想知道是否有一种方法可以在需要时“强制”更新脚本/库 部署到Azure

现在的问题是如何部署到Windows Azure?是否通过VisualStudio的
功能发布到Azure云服务。是否是Visual Studio的
程序包
功能,然后使用任何其他部署方法(从门户上载程序包、使用Azure PowerShell cmdlet或使用第三方工具部署程序包)?它是否与Mercurial集成,并且在您签入时自动完成部署

在任何情况下,你面临的问题都是NuGET未能真正干净地更新所有内容。浏览器缓存-特别是对于本地开发-IE缓存所有脚本、CSS和图像,很难说(没有明确删除所有本地缓存的文件)您实际使用的是哪个脚本。简单的版本控制问题-保留旧脚本和新脚本

当您进行JS/CSS更新时,我强烈建议所有客户在本地测试之前,首先删除所有浏览器的缓存(
crtl
+
shift
+
del
-适用于所有浏览器)

我非常怀疑,如果您使用云服务,在重新部署时,RDP和删除
sitesroot
文件夹中的任何内容是否会对您有所帮助。
ROLEROOT
驱动器中的操作(通常
E:
,有时
F:
驱动器)在
re-deploy
时会被删除/忘记,而不管您使用的重新部署方法是:就地升级还是完全重新部署。所以,实际上您所做的是创建新包并重新部署新包


您删除了某个文件夹这一事实对您的
重新部署
操作没有影响。

您在您的计算机上进行了清理签出吗?@Garath“清理签出”是什么意思?抱歉,但我不太熟悉这个术语:你是指我的源代码管理提供商(顺便说一下,它是Mercurial)的签出吗?我知道你是如何部署到Azure的。此更改可能发生在以下原因中:Azure安装了错误的nuget软件包(可能性较小,因为我记得它不会更改脚本),或者您的源代码管理有问题。