为图像和其他资源部署具有无cookie域路径更新的网站

时间:2009-11-06 12:35:50

标签: asp.net deployment hosting

我正在以asp.net应用程序的身份工作。该应用程序相当大,涉及许多具有许多参考图像和脚本的页面。我已经在无cookie的子域上托管了这样的内容。

我的问题是 - 我必须在部署时手动更新所有图像和脚本的路径,方法是对来自实际域的相对引用的无cookie域内容进行绝对引用。 如何自动执行此操作?有人这样做了吗?

StackOverflow还为网站上的各种图像使用无cookie域。以下是从 http://sstatic.net/so/img/vote-arrow-up.png

加载的示例upvote图像

alt text http://sstatic.net/so/img/vote-arrow-up.png

2 个答案:

答案 0 :(得分:0)

我用自定义控件(图像等)解决了类似的问题。有些我从现有的控件(Image)派生出一些新的。

在这些控件中,您可以决定是在开发环境中还是在生产环境中并渲染/更改链接。

编辑:添加一些示例代码。注意!此代码仅用于演示目的!这不是完美的!

public class ExternalImage : System.Web.UI.WebControls.Image
{
    protected override void OnPreRender(EventArgs e)
    {
        base.OnPreRender(e);
        if (System.Configuration.ConfigurationManager.AppSettings["IsDev"] != "true")
        {
            this.ImageUrl = System.Configuration.ConfigurationManager.AppSettings["CookieFreeDomain"] + this.ImageUrl;
        }
    }
}

答案 1 :(得分:0)

您可以使用标记转换或控制适配器。

如果有帮助,我会在本书中介绍这两种方法,以及代码示例:Ultra-Fast ASP.NET