如何从谷歌CDN下载jQuery或在本地下载Windows Azure应用程序

时间:2012-09-08 16:31:40

标签: azure

我有一个Windows Azure应用程序。当我在本地运行时,我想从本地版本的jQuery运行。在Microsoft服务器上运行时,我想使用Google CDN。

根据我的应用程序是在本地运行还是在Azure服务器上运行,我的剃刀视图是否有一种方法可以在本地和CDN版本的jQuery之间切换?

2 个答案:

答案 0 :(得分:0)

内容分发网络(CDN)可用于将内容卸载到全球分布的服务器网络,从而确保为最终用户提供更快的吞吐量。

所以CDN就是要尽可能地将数据放到用户身上,我不确定Google CDN是如何工作的,但是如果它像Azure一样,那么你需要将你的内容放到CDN中并获取一个URL到内容。在您的Web App中,您可以指向Google CDN URL,以便通过CDN在地理位置上提供上下文。

查看this博客文章,了解Azure如何使用Windows Azure内容交付网络。

您应该可以使用相同的方法,但在Google CDN位置替换?

答案 1 :(得分:0)

您可以添加新助手:

@helper ScriptPath(string path)
{
    <script src="@fnScriptPath(path)" type="text/javascript"></script>
}

@functions 
{
    static string fnScriptPath(string path)
    {
        if (Microsoft.WindowsAzure.ServiceRuntime.RoleEnvironment.IsEmulated)
            return "/Scripts/" + path;
        else
            return "http://ajax.aspnetcdn.com/ajax/jQuery" + path;
    }
}

那么你的网页会有:

@ScriptHelper.ScriptPath("jquery-1.7.1.js")
例如

重要:要使其工作,参考中的Microsoft.WindowsAzure.ServiceRuntime程序集需要将“复制本地”设置为true。我还必须关闭并重新打开改变的解决方案(而不仅仅是Build);否则,Microsoft.WindowsAzure.ServiceRuntime无法解析。

enter image description here