设计开发表现层
表现层负责应用程序的用户界面图是表现层的详细视图包括Web Forms Web User Control CodeBehind 和共享的用户界面代码表现层负责推送信息给终端用户和应用程序在基于NET的WEB应用程序中这一层有aspx / ascx / cs / vb / nfig / xml / js / resx / css 等等所有的这些文件集成在一起组成了表现层提供给用户友好的界面
图表现层 – 详细视图
ASPNET 为web页面的开发提供了丰富的控件通过这些控件我们可以开发出可视化的界面和功能在本示例程序中表现层包括一个WebForm和一个Web User Control使用GridView / DetailsView 控件给用户提供友好的界面实现基本的功能如查询插入更新和删除等等操作下面展示部分HTML脚本和codebehind代码这些脚本用来在GridView中显示数据可以了解如何通过LINQ访问Table对象
代码片段用户界面HTML
<asp:GridView ID=gvCustomer runat=server Width=% AutoGenerateColumns=False
AllowPaging=True DataKeyNames=CustomerID
onpageindexchanging=gvCustomer_PageIndexChanging
onrowediting=gvCustomer_RowEditing >
<FooterStyle CssClass=GridFooter></FooterStyle>
<RowStyle CssClass=GridItem></RowStyle>
<AlternatingRowStyle CssClass=GridAltItem></AlternatingRowStyle>
<HeaderStyle CssClass=GridHeader HorizontalAlign=Left></HeaderStyle>
<Columns>
<asp:BoundField DataField=CustomerID HeaderText=客户ID />
<asp:BoundField DataField=CompanyName HeaderText=公司名称 />
<asp:BoundField DataField=ContactName HeaderText=联系人 />
<asp:BoundField DataField=ContactTitle HeaderText=联系人头衔 />
<asp:BoundField DataField=Address HeaderText=地址 />
<asp:CommandField ButtonType=Link HeaderText=选择 ShowEditButton=true EditText=选择
CausesValidation=false />
</Columns>
</asp:GridView>
代码片段codebehind
private void BindGridView()
{
Table<Customer> localDataTable;
localDataTable = objCustomerSelectRecordAll();
gvCustomerDataSource = (from tbl in localDataTable
select new
{
tblCustomerID
tblCompanyName
tblContactName
tblContactTitle
tblAddress
});
gvCustomerDataBind();
if(localDataTableCount() == )
{
lblMessageText = 没有找到记录!;
}
}
上面的代码是Web页面后台代码该代码调用业务外观层的SelectRecordAll()方法该方法返回Table集合记录然后查询Table集合绑定返回结果到GridView
注表现层没有实现任何业务逻辑或数据访问逻辑因此它仅仅包含用户界面代码在表现层和业务外观层编写代码时确保不要创建DataContext类的实例仅仅创建业务实体类的示例
当完成这些后现在你可以看看你做了哪些工作下面是Customer 的Web界面
图Customer用户界面
总结
希望你已经了解了如何使用LINQ创建Web应用程序这篇文章是作者使用LINQ进行NTire架构设计的分析和经验使用LINQ to SQL可以减少大量的数据库操作代码同时减少应用程序的开发时间减少编码错误和是应用程序的维护更加容易
最后LINQ to SQL 对传统ADONET编程说不!