zoukankan
html css js c++ java
我的模板分析引擎类PHP的.net开发方法功能介绍篇
从一开始接触asp.net我就不领微软的情,对其提供和包装的各大控件给人们带来的方便性视而不见,一直想实现自己的模板分析方案,但工作中一直是别人安排我做什么我就得做什么,根本没时间做自己想做的事情,所以自己的模板方案迟迟未能实现。不过最近因为项目的需要,我终于有机会实现它了。
以下是我实现的模板文件Skin-test.html
{repeater rptTables}
{headerTemplate}
<
div
id
="miniBox"
>
<
div
class
="hd"
>
<
div
class
="l"
>
1
</
div
>
<
div
class
="title"
>
{repeater rptTables2}{headerTemplate}55555{/headerTemplate}{/repeater}
</
div
>
<
div
class
="r"
>
3
</
div
>
</
div
>
{/headerTemplate}
{itemTemplate}
<
div
class
="it1"
>
<
div
class
="l"
>
<
input
id
="{eval TableId}"
type
="checkbox"
/>
<
a
href
="EditTable.aspx?tableid={eval TableId}"
>
{eval TableName}
</
a
>
</
div
>
<
div
class
="r"
>
<
a
href
="EditTable.aspx?tableid={eval TableId}"
>
{lang Edit}
</
a
>
<
a
href
="EditTable.aspx?tableid={eval TableId}"
>
{lang Delete}
</
a
>
</
div
>
</
div
>
{/itemTemplate}
{alternatingItemTemplate}
<
div
class
="it2"
>
<
div
class
="l"
>
<
input
id
="{eval TableId}"
type
="checkbox"
/>
<
a
href
="EditTable.aspx?tableid={eval TableId}"
>
{eval TableName}
</
a
>
</
div
>
<
div
class
="r"
>
<
a
href
="EditTable.aspx?tableid={eval TableId}"
>
{lang Edit}
</
a
>
<
a
href
="EditTable.aspx?tableid={eval TableId}"
>
{lang Delete}
</
a
>
</
div
>
</
div
>
{/alternatingItemTemplate}
{footerTemplate}
<
div
class
="ft"
>
<
select
id
="Select1"
>
<
option
value
=""
>
{lang Action}
</
option
>
<
option
value
=""
>
{lang Delete}
</
option
>
<
option
value
=""
>
{lang Build}
</
option
>
</
select
>
</
div
>
{repeater rptTables3}{headerTemplate}55555{/headerTemplate}{itemTemplate}{eval TableId}{/itemTemplate}{/repeater}
</
div
>
{/footerTemplate}
{/repeater}
以下是分析这个模板的代码:
PageSetting p
=
ResourceManager.GetPageSetting(context.Request.CurrentExecutionFilePath);
string
txt
=
Skins.GetSkin(p.SkinFile);
IUI.ITemplate tmp
=
UIFactory.DataAccess.CreateTemplate();
tmp.InstantiateIn(
ref
txt);
if
(tmp.ContainsKey(
"
rptTables
"
))
{
Repeater rpt
=
(Repeater)tmp.FindControl(
"
rptTables
"
);
Repeater rpt2
=
(Repeater)tmp.FindControl(
"
rptTables2
"
);
Repeater rpt3
=
(Repeater)tmp.FindControl(
"
rptTables3
"
);
List
<
TableInfo
>
ls
=
new
List
<
TableInfo
>
();
for
(
int
i
=
0
; i
<
10
; i
++
)
{
TableInfo _tblInfo
=
new
TableInfo();
_tblInfo.TableId
=
Guid.NewGuid();
_tblInfo.TableName
=
string
.Format(
"
table {0}
"
, i);
ls.Add(_tblInfo);
}
rpt.DataSource
=
ls;
rpt.DataBind();
rpt2.DataSource
=
ls;
rpt2.DataBind();
rpt3.DataSource
=
ls;
rpt3.DataBind();
}
context.Response.Write(tmp.Render());
以下是执行的结果:
<
div
id
="miniBox"
>
<
div
class
="hd"
>
<
div
class
="l"
>
1
</
div
>
<
div
class
="title"
>
55555
</
div
>
<
div
class
="r"
>
3
</
div
>
</
div
>
<
div
class
="it1"
>
<
div
class
="l"
>
<
input
id
="8f035f73-a025-4aaa-a9ab-9f6d475ee762"
type
="checkbox"
/>
<
a
href
="EditTable.aspx?tableid=8f035f73-a025-4aaa-a9ab-9f6d475ee762"
>
table 0
</
a
>
</
div
>
<
div
class
="r"
>
<
a
href
="EditTable.aspx?tableid=8f035f73-a025-4aaa-a9ab-9f6d475ee762"
>
edit
</
a
>
<
a
href
="EditTable.aspx?tableid=8f035f73-a025-4aaa-a9ab-9f6d475ee762"
>
delete
</
a
>
</
div
>
</
div
>
<
div
class
="it1"
>
<
div
class
="l"
>
<
input
id
="6571e446-7c50-48a7-8195-167cddab6966"
type
="checkbox"
/>
<
a
href
="EditTable.aspx?tableid=6571e446-7c50-48a7-8195-167cddab6966"
>
table 1
</
a
>
</
div
>
<
div
class
="r"
>
<
a
href
="EditTable.aspx?tableid=6571e446-7c50-48a7-8195-167cddab6966"
>
edit
</
a
>
<
a
href
="EditTable.aspx?tableid=6571e446-7c50-48a7-8195-167cddab6966"
>
delete
</
a
>
</
div
>
</
div
>
<
div
class
="it1"
>
<
div
class
="l"
>
<
input
id
="944a4cbc-3442-4d12-9c84-95f31d463e32"
type
="checkbox"
/>
<
a
href
="EditTable.aspx?tableid=944a4cbc-3442-4d12-9c84-95f31d463e32"
>
table 2
</
a
>
</
div
>
<
div
class
="r"
>
<
a
href
="EditTable.aspx?tableid=944a4cbc-3442-4d12-9c84-95f31d463e32"
>
edit
</
a
>
<
a
href
="EditTable.aspx?tableid=944a4cbc-3442-4d12-9c84-95f31d463e32"
>
delete
</
a
>
</
div
>
</
div
>
<
div
class
="it1"
>
<
div
class
="l"
>
<
input
id
="879b8f82-0d97-4c44-8996-9eb3ab676481"
type
="checkbox"
/>
<
a
href
="EditTable.aspx?tableid=879b8f82-0d97-4c44-8996-9eb3ab676481"
>
table 3
</
a
>
</
div
>
<
div
class
="r"
>
<
a
href
="EditTable.aspx?tableid=879b8f82-0d97-4c44-8996-9eb3ab676481"
>
edit
</
a
>
<
a
href
="EditTable.aspx?tableid=879b8f82-0d97-4c44-8996-9eb3ab676481"
>
delete
</
a
>
</
div
>
</
div
>
<
div
class
="it1"
>
<
div
class
="l"
>
<
input
id
="03452077-97b0-4236-b316-4856e3afde71"
type
="checkbox"
/>
<
a
href
="EditTable.aspx?tableid=03452077-97b0-4236-b316-4856e3afde71"
>
table 4
</
a
>
</
div
>
<
div
class
="r"
>
<
a
href
="EditTable.aspx?tableid=03452077-97b0-4236-b316-4856e3afde71"
>
edit
</
a
>
<
a
href
="EditTable.aspx?tableid=03452077-97b0-4236-b316-4856e3afde71"
>
delete
</
a
>
</
div
>
</
div
>
<
div
class
="it1"
>
<
div
class
="l"
>
<
input
id
="277c9626-1667-4f94-8e9a-b4f94d7e4843"
type
="checkbox"
/>
<
a
href
="EditTable.aspx?tableid=277c9626-1667-4f94-8e9a-b4f94d7e4843"
>
table 5
</
a
>
</
div
>
<
div
class
="r"
>
<
a
href
="EditTable.aspx?tableid=277c9626-1667-4f94-8e9a-b4f94d7e4843"
>
edit
</
a
>
<
a
href
="EditTable.aspx?tableid=277c9626-1667-4f94-8e9a-b4f94d7e4843"
>
delete
</
a
>
</
div
>
</
div
>
<
div
class
="it1"
>
<
div
class
="l"
>
<
input
id
="afe35db0-d07a-44fe-88be-db5ded717916"
type
="checkbox"
/>
<
a
href
="EditTable.aspx?tableid=afe35db0-d07a-44fe-88be-db5ded717916"
>
table 6
</
a
>
</
div
>
<
div
class
="r"
>
<
a
href
="EditTable.aspx?tableid=afe35db0-d07a-44fe-88be-db5ded717916"
>
edit
</
a
>
<
a
href
="EditTable.aspx?tableid=afe35db0-d07a-44fe-88be-db5ded717916"
>
delete
</
a
>
</
div
>
</
div
>
<
div
class
="it1"
>
<
div
class
="l"
>
<
input
id
="3a2f445e-44c4-4144-84da-b08e2fb90d3b"
type
="checkbox"
/>
<
a
href
="EditTable.aspx?tableid=3a2f445e-44c4-4144-84da-b08e2fb90d3b"
>
table 7
</
a
>
</
div
>
<
div
class
="r"
>
<
a
href
="EditTable.aspx?tableid=3a2f445e-44c4-4144-84da-b08e2fb90d3b"
>
edit
</
a
>
<
a
href
="EditTable.aspx?tableid=3a2f445e-44c4-4144-84da-b08e2fb90d3b"
>
delete
</
a
>
</
div
>
</
div
>
<
div
class
="it1"
>
<
div
class
="l"
>
<
input
id
="8d555e36-c4c7-4219-8f67-8305db9ae8d2"
type
="checkbox"
/>
<
a
href
="EditTable.aspx?tableid=8d555e36-c4c7-4219-8f67-8305db9ae8d2"
>
table 8
</
a
>
</
div
>
<
div
class
="r"
>
<
a
href
="EditTable.aspx?tableid=8d555e36-c4c7-4219-8f67-8305db9ae8d2"
>
edit
</
a
>
<
a
href
="EditTable.aspx?tableid=8d555e36-c4c7-4219-8f67-8305db9ae8d2"
>
delete
</
a
>
</
div
>
</
div
>
<
div
class
="it1"
>
<
div
class
="l"
>
<
input
id
="0edd6e3e-d1fc-4842-9832-d2e037f770ea"
type
="checkbox"
/>
<
a
href
="EditTable.aspx?tableid=0edd6e3e-d1fc-4842-9832-d2e037f770ea"
>
table 9
</
a
>
</
div
>
<
div
class
="r"
>
<
a
href
="EditTable.aspx?tableid=0edd6e3e-d1fc-4842-9832-d2e037f770ea"
>
edit
</
a
>
<
a
href
="EditTable.aspx?tableid=0edd6e3e-d1fc-4842-9832-d2e037f770ea"
>
delete
</
a
>
</
div
>
</
div
>
<
div
class
="ft"
>
<
select
id
="Select1"
>
<
option
value
=""
>
action
</
option
>
<
option
value
=""
>
delete
</
option
>
<
option
value
=""
>
Build
</
option
>
</
select
>
</
div
>
555558f035f73-a025-4aaa-a9ab-9f6d475ee7626571e446-7c50-48a7-8195-167cddab6966944a4cbc-3442-4d12-9c84-95f31d463e32879b8f82-0d97-4c44-8996-9eb3ab67648103452077-97b0-4236-b316-4856e3afde71277c9626-1667-4f94-8e9a-b4f94d7e4843afe35db0-d07a-44fe-88be-db5ded7179163a2f445e-44c4-4144-84da-b08e2fb90d3b8d555e36-c4c7-4219-8f67-8305db9ae8d20edd6e3e-d1fc-4842-9832-d2e037f770ea
</
div
>
查看全文
相关阅读:
sqlHelp.java
IIS7.0 检测到在集成的托管管道模式下不适用的ASP.NET设置 的解决方法
[转]安装程序在安装此软件包时遇到一个错误,这可能表示此软件包有错。错误码是29506
单表中的sql语句
网页::::无法访问请求的页面,因为该页的相关配置数据无效。
<authentication mode="Windows"/>
无法从传输连接中读取数据: 远程主机强迫关闭了一个现有的连接。这个错误很难判断错在哪里,刚开……
[转] css实现透明度(兼容IE6、IE7、Firefox2.0)
企业微信机器人消息发送
阴阳历自动转换工具函数
原文地址:https://www.cnblogs.com/afxcn/p/867453.html
最新文章
uitableview 回顶端
点击空白处键盘hide
window hadoop yarn任务执行失败:ExitCodeException exitCode=1073741515
. NET多态枚举简单应用
实现简单的字段变更记录
a3怎么打印双面对折页
python安装教程
Pycharm的安装使用(编辑工具)
JavaScript中的正则表达式
vue项目无法切换语言
热门文章
vue中向子组件传递数据报错
vue向子向父传递数据
vue子组件中的更新后的刷新数据
JavaScript 中的原型对象
JavaScript 中的forEach函数
JavaScript 构造函数
vue中的遇到的问题,consle报错黄字
JavaScript 原型对象的方法
zend studio 9.0.3 注册码
CreateDB.java
Copyright © 2011-2022 走看看