|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
刚刚打开这篇专题,猛然见到HAL9000发表的《对于大型公司项目平台选择j2ee的几层认识》系列,深受启发。asp.net|数据在开辟ASP.NET站点项目中,常常用表格化的体例显现数据。最经常使用的大概就是DataGrid绑定DataSet数据的体例。在做过的软件项目中,有3种表格化数据的典范处置体例。
1、DataGrid绑定命据源。这类体例人人用的最多,可是DataGrid与ADO.NET完善的绑定体例,仍是让人不爽。清一色的DataGrid作风很难顺应分歧项目标特别作风,并且在DataGrid上做出的本性化处置也会十分的贫苦。
2、用XML(数据)+XSL(款式单)。人人能了解,DataSet绑定到DataGrid的完成机理不外云云。如图所示,完成如许的一个表格,开辟职员能够恣意的计划XSL的作风款式。
3、间接将数据绘制到HTML。这个体例有些土,但有些时分却十分无效,先看完成的代码。下述代码是完成上图所示的表格。
1<tablestyle="WIDTH:100%;BORDER-COLLAPSE:collapse;HEIGHT:10px">
2<tr>
3<tdalign="center">
4<TABLEid="tblContainer"class="MsoNormalTable"style="WIDTH:380px;BORDER-COLLAPSE:collapse;HEIGHT:10px"
5cellSpacing="0"cellPadding="6"border="1"runat="server"bordercolor="#99cccc">
6<tr>
7<tdcolspan="2"align="center">
8<P><FONTsize="3"><STRONG><FONTface="宋体">综合办理部职员职务</FONT></STRONG></FONT></P>
9</td>
10</tr>
11<tr>
12<tdalign="center"bgcolor="#003399"><FONTsize="2"color="#ffffff"><STRONG>职员姓名</STRONG></FONT></td>
13<tdalign="center"bgcolor="#003399"><FONTsize="2"color="#ffffff"><STRONG>部门职务</STRONG></FONT></td>
14</tr>
15</TABLE>
16</td>
17</tr>
18</table>
间接用ASP.NETWebControls的Add办法,将Label增加到HTML的Cell中。
1publicclassWebForm2:System.Web.UI.Page
2{
3
4structPersonRole
5{
6publicstringname;
7publicstringrole;
8}
9
10protectedSystem.Web.UI.HtmlControls.HtmlTabletblContainer;
11publicstringstrAuditItemID="A899B637-AC47-42EB-9B61-A61C9C880DDC";
12privatevoidPage_Load(objectsender,System.EventArgse)
13{
14//在此处安排用户代码以初始化页面
15if(Request.QueryString["AuditItemID"]!=null)
16{
17strAuditItemID=Request.QueryString["AuditItemID"].ToString();
18}
19
20GetTeamMember(strAuditItemID);
21}
22
23Web窗体计划器天生的代码#regionWeb窗体计划器天生的代码
24overrideprotectedvoidOnInit(EventArgse)
25{
26//
27//CODEGEN:该挪用是ASP.NETWeb窗体计划器所必须的。
28//
29InitializeComponent();
30base.OnInit(e);
31}
32
33/**////<summary>
34///计划器撑持所需的办法-不要利用代码编纂器修正
35///此办法的内容。
36///</summary>
37privatevoidInitializeComponent()
38{
39this.Load+=newSystem.EventHandler(this.Page_Load);
40
41}
42#endregion
43
44privatevoidGetTeamMember(stringAuditItemID)
45{
46stringstrMaster,strTeamLeader,strPM;
47ArrayListal=GetTeamMemberName(AuditItemID,outstrMaster,outstrTeamLeader,outstrPM);
48
49foreach(PersonRoleprinal)
50{
51HtmlTableCellcell=newHtmlTableCell();
52cell.Align="Center";
53Labellbl=newLabel();
54lbl.Text=pr.name;
55lbl.Font.Size=9;
56
57cell.Controls.Add(lbl);
58HtmlTableRowrow=newHtmlTableRow();
59row.Cells.Add(cell);
60
61HtmlTableCellcellRole=newHtmlTableCell();
62cellRole.Align="Center";
63LabellblRole=newLabel();
64lblRole.Text=pr.role;
65lblRole.Font.Size=9;
66
67cellRole.Controls.Add(lblRole);
68row.Cells.Add(cellRole);
69
70tblContainer.Rows.Add(row);
71}
72}
73
74privateArrayListGetTeamMemberName(stringAuditItemID,outstringstrMasterName,outstringstrTeamLeader,outstringstrPM)
75{
76ArrayListal=newArrayList();
77strMasterName="无";
78strTeamLeader="无";
79strPM="无";
80
81PersonRolepr;
82pr.name="张三";
83pr.role="总司理";
84al.Add(pr);
85
86pr.name="李四";
87pr.role="副总司理";
88al.Add(pr);
89
90pr.name="王五";
91pr.role="科员";
92al.Add(pr);
93
94pr.name="赵六";
95pr.role="科员";
96al.Add(pr);
97
98returnal;
99}
100}
在绘制页面的时分,用哪一种体例应当是仁者见仁、智者见智。在站点开辟中,这3种体例都有典范的使用,出格是第三种,我发明在办理部分页面处置的功能成绩中使用的十分无效。何况能够主动化的Layout页面控件,本性化处置比DataGrid中重写Render加倍简单。
J2EE比较成熟一点,一些比较出名的企业应用软件都是基于J2EE的。以后的发展就不好说了。不过java比较烦,学.net的话,微软把很多工具都封装好了,学起来可能容易一点。 |
|