我有一个应用程序,不同的用户可以通过一个单一的门户登录登录。当他们登录时,如果他们属于一个以上的公司,他们必须选择他们所属的公司。主题将改变,如果有一个自定义的主题为该公司。
我的应用程序的每个页面都继承了一个"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";
}
}
}当客户属于多个公司,并且他们选择了他们所属的公司时,主题加载就很好了。
所以,我遇到的问题是:
如果它们只属于一家公司,则会自动选择该公司,但主题不会立即加载。但是,如果我刷新页面,主题就加载得很好。即使是默认的主题也不会加载。在我刷新之前,页面根本没有css。
我甚至查看源代码并查找我的css名称,但它们并不在那里。我刷新并做同样的事情,他们就在那里。
我没有使用表单身份验证,web配置中的默认主题是" default“。
<pages theme="Default">对可能发生的事情有什么想法吗?如果你需要澄清任何事情,请提出来。
谢谢!
发布于 2010-07-14 02:30:40
我找到问题了。在登录期间设置公司信息之前调用了Page_PreInit。
所以在用户登录之后,我就是在这里调用逻辑来检查公司详细信息,而不是在母版页加载中。
https://stackoverflow.com/questions/3039847
复制相似问题