MVC中的页面加载不正确

时间:2011-02-14 15:07:05

标签: asp.net-mvc-2 iis-6

我们目前在IIS 6中托管了一个asp.net mvc 2网站。在这个应用程序中,我们覆盖了“Create Controler”方法并配置了一个自定义视图引擎。此引擎根据url格式指定视图的位置。例如;如果用户登陆www.asite.com/test/1.0/index.aspx 视图引擎告诉mvc在'sitedirectory / test / 1.0 / views / pages /'目录中查找index.aspx;

string versionDirectory = String.Format("~/{0}/{1}", offerCode, version.ToString("#0.0000")); 
        ViewLocationFormats = new[]
                                  {
                                      versionDirectory + "/Views/Pages/{0}.aspx",
                                      versionDirectory + "/Views/Pages/{0}.ascx",
                                      "~/Views/Pages/{0}.aspx",
                                      "~/Views/Pages/{0}.ascx",
                                      "~/Shared/Views/{0}.aspx",
                                      "~/Shared/Views/{0}.ascx"
                                  };

        MasterLocationFormats = new[]
                                    {
                                        versionDirectory + "/Views/Layouts/{0}.master",
                                        "~/Views/Layouts/{0}.master"
                                    };

        PartialViewLocationFormats = ViewLocationFormats;

我们遇到的问题是,当两个或更多用户大致同时登陆网站时, 加载的视图可以切换。但是,为这些视图显示的数据是正确的。

有没有人知道为什么会发生这种情况?

1 个答案:

答案 0 :(得分:1)

这是一个(小)已知的问题 - 缓存有问题。

看一下这篇文章: http://www.hanselman.com/blog/ABetterASPNETMVCMobileDeviceCapabilitiesViewEngine.aspx

并完成评论。

我最终实现了直接从IViewEngine派生并在内部使用WebFormsViewEngine的owe视图引擎。