|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
一般的指的.net就是跟java相对的那种,主要是做企业级应用的。你如果想学这个,主要就是学C#和数据库。(ASP.NET好像很重要的,应该也要学的,ASP.NET上好像可以结合VB和C#等多种语言,但是微软主推C#)在从一个Web页面转换到另外一个Web页面时,你的ASP.NET使用程序的用户界面的某些部分经常是坚持稳定的――如某些“粉饰”的部分:页眉处的GIF图片、程度工具条或导航条、左边的链接、等等。你能够持续用它们,而不用为每一个页面重修。 在已往,一个盛行的ASP手艺就是为一个页面的每一个次要部分创立一个include文件,然后建一个全体的HTML表,表的单位包括每一个include文件。这类办法是可行的,可是不美妙,还简单堕落。侥幸的是,ASP.NET可让你用一种更好的办法来办理这个成绩,使用一个VisualStudio.NETPlaceHolderWeb控件。该控件将别的控件作为一个汇合(collection)包括起来。你能够在运转时扫除谁人collection或增加它;比方,你能够在运转时增加一个Web用户控件(一个模块式的Web页面)。我将报告怎样将PlaceHolderWeb控件同Web用户控件分离起来使用,为构建ASP.NET使用程序供应一个办法。
起首在VS.NET中创立一个新的ASP.NETWeb使用程序。我在样例代码顶用的是C#。创立一个Web窗体,保留的文件带有ASPX扩大名。我称其为我的main.aspx。该页面是你的使用程序中独一的Web页面,由于你用Web用户控件(ASCX文件)来开辟一切的页面“内容”。
在main.aspx页面中创立你选择的站点粉饰内容。在你想安排站点丰厚内容中央增加一个PlaceHolder控件。然后,将上面的代码增加到你的页面的PageLoad事务中:
privatevoidPage_Load(objectsender,
System.EventArgse)
{
stringp=Request.QueryString.Get("p");
PlaceHolder1.Controls.Clear();
if(p==null)
PlaceHolder1.Controls.Add(LoadControl
("modules/"+"Default"+".ascx"));
else
{
PlaceHolder1.Controls.Add(LoadControl
("modules/"+p+".ascx"));
}
}
经由过程该代码,你能够在项目模块文件夹中看到一个包括Web用户控件页面(ASCX)的名字的查询字符串参数p。你不必将一切ASCX文件都放在一个独自的文件夹中,但这么做切实其实能够进一步断绝使用程序。
一旦你失掉谁人字符串后,清空PlaceHolder的Controls汇合,扫除你在先前大概显现的任何ASCX。然后,检察一下代码,看你是不是必要加载一个缺省的ASCX。最初,假如p查询字符串是哀求的一部分,那末由p查询字符串代表的页面就被加载了。
你不必要费很年夜的劲构建代码来在你的站点上显现多个Web页面。在你的VS.NET项目中增加一个新的Web用户控件页面。一旦你增加了这个页面,你就能够把它看成你的使用程序中的独一的页面来计划并编写代码了;你乃至不必要晓得它将在main.aspx页面中运转。固然,假如该页面必要与主页面交互,情形并没有这么复杂,但在这里我其实不盘算报告这个成绩。
.坚持你的WebGUIs的恒量元素
假想你必要在VS.NET开辟情况中显现一个AccountLogon用户控件(见)。
代码只给开辟职员供应与该页面细节相干的UI。没有举措改动全体页面的别的方面。
如今,当你在一个扫瞄器中运转http://localhost/CSCSdotNET/main.aspx时,起首加载了default.ascx页面,这是因为main.aspx的PageLoad事务的原因。要导航到Login页面,你只需将一个p查询字符串参数增加到哀求——在这个例子中,使用URLhttp://localhost/CSCSdotNET/main.aspx p=01-AccountLogon。如今显现的就是全部main.aspx页面,和你在中看到的静态加载的01-AccountLogon.ascsWeb用户控件。
关于作者:
MarcGusmano在InformationManagementGroup(www.imginc.com)公司次要卖力新兴手艺的研讨,这家公司是MicrosoftGoldCertifiedPartner(金牌资历互助同伴)。Marc次要努力于使用COM+和.NET计划、完成散布式和电子商务办理计划。他在年夜会上做演讲,并在芝加哥办理芝加哥的MicrosoftInternetDevelopersGroup。他的接洽体例是gusmanomarc@imginc.com。
捆绑编译器。用户不需要受制于厂家,自己就能将程序在新平台上编译运行。除了牛B轰轰的linux,估计也没有系统捆绑c/c++的编译器,而且许多新平台都无法支持复杂的c/c++编译器在上面直接运行。 |
|