是否有一种简洁的编程方式来确定哪些主题安装在ASP.NET应用程序中?
我有几个ASP.NET应用程序使用名为"Theme"的cookie来设置Page PreInit事件中的主题.问题是,在我的开发环境中使用localhost时,一个应用程序的主题名称会呈现给另一个应用程序,从而抛出异常:
在应用程序或全局主题目录中找不到主题"XYZ".
我想我可能只能检查我的应用程序首先要查看哪些主题是否有效 - 即没有查看App_Themes文件夹的内容.
如果不查看App_Themes文件夹,我认为没有办法做到这一点.
但您可以使用以下内容轻松列出现有主题:
DirectoryInfo themes = new DirectoryInfo(Server.MapPath("~/App_Themes"));
foreach (DirectoryInfo theme in themes.GetDirectories())
{
string themeName = theme.Name;
}
Run Code Online (Sandbox Code Playgroud)
或者检查给定主题是否存在:
Directory.Exists(Server.MapPath("~/App_Themes/" + theTheme))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
641 次 |
| 最近记录: |