寻求帮助:无法识别的属性“theme”。

tarim 2008-06-06 12:33:24
我从网上下了个程序,再2003 IIS里运行的时候出现以下错误,我对.NET一锹不通。能否通过修改什么配置让这个程序能正常运行。分数没问题,呵呵。
“/”应用程序中的服务器错误。
--------------------------------------------------------------------------------

配置错误
说明: 在处理向该请求提供服务所需的配置文件时出错。请检查下面的特定错误详细信息并适当地修改配置文件。

分析器错误信息: 无法识别的属性“theme”。

源错误:


行 43: </customErrors>
行 44: -->
行 45: <pages theme="SkinFile"/>
行 46: </system.web>
行 47: </configuration>


源文件: E:\www\openlab\WebSite\web.config 行: 45


--------------------------------------------------------------------------------
版本信息: Microsoft .NET Framework 版本:1.1.4322.2407; ASP.NET 版本:1.1.4322.2407
...全文
153 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
地下室小红叔 2008-06-06
  • 打赏
  • 举报
回复
那个程序是在.net2005写的(framework2.0框架)
叶子 2008-06-06
  • 打赏
  • 举报
回复
·创建 Theme 的例子:

1、在 Web 项目中创建 App_Themes 目录。它是预定义的目录,ASP.NET 2.0 会自动识别其目录下的 Theme 。

2、在 App_Themes 目录创建 orangeTheme、BlueTheme 两个子目录。

3、为 App_Themes 下的每个子目录添加 Skin 文件,如 Control.Skin 。ASP.NET 2.0 会自动分析每一个 Skin 文件,在这里的命名只需要为了开发时方便分类。

4、也可以为 App_Themes 下的每个子目录添加 CSS 文件。ASP.NET 2.0 也会自动将每一个 CSS 文件添加到每一个使用此样式的页面中去。

·定义页面内容与 Theme 样式

1、default.aspx 页面定义如下:

<%@ Page Theme="OrangeTheme" %>
<html>
<head runat="server">
<title>Orange Page</title>
</head>
<body>
<form id="form1" runat="server">
Enter your name:<br />
<asp:TextBox ID="txtName" Runat="Server" />
<br /><br />
<asp:Button ID="btnSubmit" Text="Submit Name" Runat="Server"/>
</form>
</body>
</html>

2、在 OrangeTheme 主页的 Control.Skin 文件中定义如下:

注意:只能指定外观属性,不能指定如 AutoPastback 等属性。

默认未命名的 Skin 将会为所有 TextBox 类型定义外观。
<asp:TextBox BackColor="Orange" ForeColor="DarkGreen" Runat="Server" />
<asp:Button BackColor="Orange" ForeColor="DarkGreen" Font-Bold="True" Runat="Server" />

已经命名 SkinID 的将可以为指定 TextBox 类型定义外观。
<asp:TextBox SkinID="Title" BackColor="Orange" ForeColor="DarkGreen" Runat="Server" />

·在页面中使用 Theme

1、在 Aspx 文件顶部 <%@ Page %> 中添加 Theme="Default" 属性。这样它就可以使用 Default 主题了。

2、如果想到在整个网站应用某个 Theme 就需要在 Web.Config 定义。

<configuration>
<system.web>
<pages theme="OrangeTheme" />
</system.web>
</configuration>

这样的定义相当于默认一个 Theme 在所有网站文件中,使用时仍可以为每个页面定义 Theme 。
Skin 部分会使用 Page 面中定义的 Theme ,而 CSS 会重载默认主页中的 CSS 样式表。

3、指定好 Theme 之后所有的外观都会使用 Skin 中定义的。你也可以指定控件的 SkinID 来定义单独外观。

4、如果想用编程方式定义 Theme 必需在 Page_PreInit事件中处理,如下:

void Page_PreInit(object sender, EventArgs e)
{
Page.Theme = Request["ThemeName"];

如果需要以编程的方式为 Page 载入 MasterPage 文件,也需要在此定义。
this.MasterPageFile = Request["MasterPageFile"];
}

amandag 2008-06-06
  • 打赏
  • 举报
回复
版本信息: Microsoft .NET Framework 版本:1.1.4322.2407; ASP.NET 版本:1.1.4322.2407
==
楼主,Theme是ASP.NET 2.0的东西, 要么你的开发环境是.NET 1.1,要么你没有把应用程序配置为2.0

请用 开始 -- 运行 -- inetmgr -- 网站 -- 默认网站 -- 右键你的虚拟目录名 -- 属性 -- ASP.NET 选项卡 -- 将ASP.NET 版本改为 2.0.XXXXX

如果没有看到此选项卡,那你的环境肯定没有装.NET Framework 2.0的支持

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧