ASP.NET - 将图像 URL 重定向到新文件夹

发布于 2024-12-05 11:23:56 字数 415 浏览 2 评论 0原文

我的公司正在弃用我们的 Web 表单项目并仅使用 MVC 3。MVC 3 中图像的默认文件夹是 ~/Content/images/.. 问题是我们的 WebForms 指向 ~/images/..

我们的客户可以直接链接到 https://www.myurl.com/images/imagename.png 我们希望它自动返回 https://www.myurl.com/content/images/imagename.png 代替。

处理这个问题的最佳途径是什么?

My company is in the process of deprecating our Web Forms projects and using just MVC 3. The default folder for images in MVC 3 is ~/Content/images/.. The problem is that our WebForms was pointing to ~/images/..

We have clients who have direct links to https://www.myurl.com/images/imagename.png and we want it to automatically return the image at https://www.myurl.com/content/images/imagename.png instead.

What is the best route to handle this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

喜你已久 2024-12-12 11:23:56

您可以创建一个 ImageController 控制器,如下所示:

public class ImageController : Controller
{
    public ActionResult Index(string filename)
    {
        return Redirect("~/Content/images/" + filename);
    }
}

然后您可以设置路由,以便 URL /images/ 转到 ImageController::Index

public static void RegisterRoutes(RouteCollection routes)
{
    // ...
    routes.MapRoute(
        "ImageRedirects", "images/{filename}", 
        new { controller = "Image", filename = "" });
    // ...
}

You could create an ImageController controller, something like this:

public class ImageController : Controller
{
    public ActionResult Index(string filename)
    {
        return Redirect("~/Content/images/" + filename);
    }
}

Then you'd set up your routing so that the URL /images/ goes to ImageController::Index.

public static void RegisterRoutes(RouteCollection routes)
{
    // ...
    routes.MapRoute(
        "ImageRedirects", "images/{filename}", 
        new { controller = "Image", filename = "" });
    // ...
}
深海少女心 2024-12-12 11:23:56

我认为您需要创建 HTTP 处理程序并自动重定向到其他文件夹

请参阅此链接
http://www.nerdymusings.com/LPMArticle.asp?ID=12
http://support.microsoft.com/kb/308001

I think you need to create HTTP handler and automaticaly redirect to other folder

See this link
http://www.nerdymusings.com/LPMArticle.asp?ID=12
http://support.microsoft.com/kb/308001

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文