2010-06-14 58 views
0

我有一个应用程序,其中不同的用户可以通过单个门户登录登录。当他们登录 时,如果他们属于多个公司,他们必须选择他们所属的公司。如果该公司有自定义主题,主题将会更改。App_Themes不加载初始加载

每一页我的应用程序具有继承“CustomPage”类

下面是自定义页面的代码:

public class CustomPage : Page 
{ 
    protected void Page_PreInit(object sender, EventArgs e) 
    { 
     if (Globals.Company != null && Directory.Exists(Page.MapPath("~/App_Themes/" + Globals.Company.CompanyName))) 
     { 
      Page.Theme = Globals.Company.CompanyName; 
     } 
     else 
     { 
      Page.Theme = "Default"; 
     } 
    } 
} 

当客户属于超过1级的公司,他们选择公司他们属于,主题加载得很好。

所以,我遇到的问题是这样的:

如果他们属于仅有1家公司,该公司是自动选择,但主题不加载的时候了。但是,如果我刷新页面,主题加载就好了。即使默认主题也不会加载。在我刷新之前,该页面一直没有CSS。

我甚至查看源代码并查找我的css名称,但它们不在那里。我刷新并做同样的事情,他们在那里。

我不使用的web配置窗体身份验证和默认的主题是“默认”

<pages theme="Default"> 

任何想法可能什么呢?如果您需要澄清任何事情,请询问。

谢谢!

回答

0

我发现了这个问题。在登录期间设置公司信息之前调用Page_PreInit。

因此,在用户登录后,这就是我调用逻辑来检查公司详细信息与主页面加载情况的关系。