当前位置: 首页 > 文章教程  > 计算机与互联网 > 网络编程

10.3增强的DynamicData控件

8/31/2020 9:56:04 PM 人评论

10.3增强的DynamicData控件

图片 1 知识点讲解:光盘:视频\PPT讲解(知识点)\第10章\增强的Dynamic Data控件.mp4

Dynamic Data控件犹如ASP.NET的Ruby on Rails,它无需配置、无需代码、无需任何干预,只使用一个控件即可完成一个完整的数据驱动程序。动态数据控件会自动搜寻项目中的数据库,自动选择与页面文件名相同的数据表,自动提供列表显示、详细内容显示、过滤、分页、排序、添加、删除、编辑、修改以及RSS等功能,所有功能都是自动的。ASP.NET4.5中的Dynamic Data控件功能更加强大,在下面的内容中将向你具体展示。

在ASP.NET 4.5中,Dynamic Data控件新增了如下4个可选值。

(1)EnableDynamicData:启用 Dynamic Data的功能。

(2)DynamicHyperLink:用于方便地生成在Dynamic Data站点中导航的超链接;

(3)Entity Template:实体模板是一个新增的用于自定义数据显示的模板,其基于FormView控件做数据呈现。

(4)DisplayAttribute:新增的一个Attribute,可以设置字段的Name和Order。

1.演示EnableDynamicData

实例051 演示EnableDynamicData的使用

源码路径 光盘\daima\10\ DynamicData\  视频路径 光盘\视频\实例\第10章\051

首先编写实现文件EnableDynamicData.aspx,其主要代码如下。

<%@ Page Language="C#|" AutoEventWireup="true" CodeBehind="EnableDynamicData.aspx.cs"
  Inherits="DynamicData.Demo.EnableDynamicData" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional
//EN" "http://www.w3.org /TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
  <title></title>
</head>
<body>
  <form id="form1" runat="server">
  <div>
    <!--收集并显示由 Dynamic Data 所做的数据验证的结果-->
    <asp:ValidationSummary ID="ValidationSummary1" runat=
"server" EnableClientScript="true" HeaderText="验证错误的列表" />
    <asp:DetailsView ID="DetailsView1" runat="server" AllowPaging=
"True" DataKeyNames="ProductID"
      DataSourceID="EntityDataSource1">
      <Fields>
        <asp:CommandField ShowDeleteButton="True" ShowEditButton="True" ShowInsertButton="True" />
      </Fields>
    </asp:DetailsView>
    <asp:EntityDataSource ID="EntityDataSource1" runat="server" ConnectionString="name=AdventureWorksEntities"
      DefaultContainerName="AdventureWorksEntities" EnableDelete="True" EnableInsert="True"
      EnableUpdate="True" EntitySetName="Products" EnableFlattening="False">
    </asp:EntityDataSource>
  </div>
  </form>
</body>
</html>
范例101:使用Accordion控件实现折叠面板
源码路径:光盘\演练范例\101视频路径:光盘\演练范例\101范例102:用DragPanelExtender
实现拖曳层
源码路径:光盘\演练范例\102视频路径:光盘\演练范例\102\

编写处理文件EnableDynamicData.aspx.cs,其主要实现代码如下。

  public partial class EnableDynamicData : System.Web.UI.Page
  {
    protected void Page_Init()
    {
      DetailsView1.EnableDynamicData(typeof(Product), new { Name = "默认名称" });
    }
    protected void Page_Load(object sender, EventArgs e)
    {
    }
  }

通过上述代码,启动了Dynamic Data控件的新功能。

2.演示DynamicHyperLink

实例052 演示DynamicHyperLink的使用

源码路径 光盘\daima\10\ DynamicData\  视频路径 光盘\视频\实例\第10章\052

首先编写实现文件DynamicHyperLinkDemo.aspx,其主要代码如下。

<%@ Page Language="C#|" AutoEventWireup="true" CodeBehind="DynamicHyperLinkDemo.aspx.cs"
  Inherits="DynamicData.Demo.DynamicHyperLinkDemo" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org /TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
  <title></title>
</head>
<body>
  <form id="form1" runat="server">
  <div>
    <!--
      DynamicHyperLink - 
        Action - 指定 Action(可选值
        有List|Details|Edit|Insert)
        TableName - 需要链接到的目标表名
        ContextTypeName - 上下文的类全名
    -->
    <asp:DynamicHyperLink ID="ListHyperLink" runat="server" Text="全部产品" Action="List"
      TableName="Products" ContextTypeName="DynamicData.AdventureWorksEntities"> 
    </asp:DynamicHyperLink>
    <!--
范例103:用Timer控件实现Ajax聊天室
源码路径:光盘\演练范例\103视频路径:光盘\演练范例\103范例104:CollapsiblePanelExtender实现最小化
源码路径:光盘\演练范例\104视频路径:光盘\演练范例\104\

生成的HTML代码如下:

      <a id="ListHyperLink" href="/Products/List.aspx">全部产品& lt;/a>
    -->
  </div>
  </form>
</body>
</html>

在上述代码中,通过DynamicHyperLink生成了在Dynamic Data站点中导航的超链接。

上一篇:10.2新增的3个属性

下一篇:10.4并行运算

相关教程

共有条评论 网友评论

验证码: 看不清楚?