便携式区域中的嵌入式图像未在部署中显示

时间:2011-11-25 16:13:03

标签: model-view-controller asp.net-mvc-routing portability asp.net-mvc-areas

我在VS2010和IIS 7上使用MVC 2.我创建了一个便携式区域,其中嵌入了一些图像。我尝试在便携式区域注册时以两种方式创建路由规则。以下是我尝试的两种方式。

方法1

    context.MapRoute("ResourceRoute", "login/resource/{resourceName}",
        new { controller = "EmbeddedResource", action = "Index" },
        new string[] { "MvcContrib.PortableAreas" });

        context.MapRoute(
            "login",
            "login/{controller}/{action}",
            new { controller = "login", action = "index" });

     RegisterAreaEmbeddedResources();

在这种情况下,我尝试使用Url.Resource()

访问图像

方法2

     context.MapRoute(
        "login",
        "login/{controller}/{action}",
        new { controller = "login", action = "index" });

     RegisterDefaultRoutes(context);
     RegisterAreaEmbeddedResources();

在这种情况下,我尝试使用Url.Content()

访问图像

以下是事情正常的情况。

  1. 当我在本地开发服务器上运行应用程序时(Ctrl + F5)。
  2. 在我的localhost上发布应用程序后运行应用程序。
  3. 当我在不同的开发服务器上运行应用程序(Ctrl + F5)时,请在我朋友的盒子上说。
  4. 但它不会渲染图像(现在我只有图像作为静态资源。没有CSS或JS),如果我在别人的系统上发布,比如我朋友的盒子上的localhost。除了图像渲染之外,其他一切工作正常。

    我已经尝试了所有可能的方法来使它在失败的情况下渲染,但都是徒劳的。我需要一些帮助。有人请吗?

    提前谢谢!

1 个答案:

答案 0 :(得分:0)

有关如何在此blog post中处理便携式区域中的嵌入内容的讨论。