空心雨毕业论文网提供毕业论文、职称论文、硕士论文、计算机论文等的代写服务,同时还提供各种期刊论文的发表。如果你有需要,请联系我们QQ:5599630;电话:13350726595;E-mail:singlehearted@vip.qq.com
RSS
 

ASP.Net中程序构架与程序代码的分离(4)

来源:网络转载 作者:

lblUserName.Font.Name = "Arial";
lblUserName.Text = this.UserName;
this.Controls.Add(lblUserName);
//this.Controls.Add(new LiteralControl("nbsp;"));

this.Controls.Add(new LiteralControl("权限:"));
Label lblPurview = new Label();
lblPurview.ForeColor = Color.Red;
lblPurview.Font.Name = "Arial";
lblPurview.Text = this.Purview;
this.Controls.Add(lblPurview);
}
}
}

上面和程序是将需要实现的功能,全部导入了自定义控件。程序中可以看到,在aspcn命名空间中包含三个类(Header,Logon,Footer),这三个类正是构架三个主体部分。

要使用自定义控件,还必须将原代码进行编译。

csc /t:library /out:aspcn.dll /r:System.Data.dll,System.Web.dll,System.Drawing.dll CustomControls.cs

C#程序编译指令的用法,本人在此也不再重复。需要注意的是编译的文件名,必须与控件中namespace的名字一致。

编译后的dll,仍然不能使用,我们必须将其放到.Net平台中最著名的目录--/bin中,bin目录(如果不存在,可以自行建立)存放的是当前虚拟目录中所有使用自定义控件以及组件,CLR在执行ASP.Net程序时会自动搜索此目录中的文件,以找到与ASP.Net程序相匹配的Namespace、Class 以及Assembly。

当我们将程序编译好的aspcn.dll放入/bin目录后,这个自己编写的Server控件便可以使用了。
(需要声明一下,由于编写Server控件时不能使用Session等变量,以至无法做到两个class之间的通信,因此在缺省状态下Footer控件并不能像前面的程序一样随Session内容发生改变,不过可以通过普通操作Server控件的方法来操作相应的属性达到相同的效果,此处为节约版面,未采用)
下面再来看看主体Web Form的程序内容:

<% @ Register TagPrefix="aspcn" Namespace="aspcn" Assembly="aspcn" %>













怎么样,相当简单明了吧。
引用我们自定义的控件,也相当简洁,只需将Register指令的TagPrefix、Namespace、Assembly属性全部设定为aspcn。

至此,ASP.Net中三种代码与页面构架分离的方法已经介绍完毕。

三种方法各有优劣,本人比较倾向于使用用户控件与CodeBinde技术结合使用,因为他们均不需要编译,相对来说更容易使用,如果您要保护你的代码,自定义控件则当然是您最佳的选择。

希望本文对您的编程有所帮助。






阅读更多内容<<上一页 · 1 · 2 · 3 · 4
11
最新评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
      本站是由一个众多学科的博士群体组建而成,主要创办者为成都各重点高校博士。本论文网内理工科写手均为博士,文科类写手大部分为博士,且领域涵盖广泛,写作势力强大,若有部分专业,没有相关的写手,我们给你寻找合适的写手! 依托强大的人力资源,我们本着诚心交流的宗旨,专门为您排解写作上的难题。从在科研及实践工作中稳扎稳打的经历,我们具备了研究问题,解决问题的能力。论文写作和论文发表,作为教育体系的一个重要环节,我们确实有能力给您解决好问题,正所谓,真金不怕火来炼,请相信我们的势力,没有把握的事,我们不会做!
      本站受多家期刊委托,其中包括国家级中文核心期刊目录正刊,CSSCI目录正刊,增刊,省级以上公开出版的优秀期刊正刊,本站负责论文推荐发表,加急1个月即可发表。本站负责论文发表,不发表承诺退款!!目前主要负责法律,管理,经济,理工,农学,行政,医学,艺术,英语等类论文发表论文代写。详细期刊目录见本站相关内容。
赞助商链接