当前位置: 首页 > news >正文

NetTiers学习笔记08---Entity层的扩展和EntityDataSource的使用方法

扩展1个属性 ContractPersonName , 这个属性需要Deepload Users表 才能得到
所以加了判断,如果没有DeepLoad则会抛出异常
 1       public  partial  class  Contract : ContractBase
 2      {
 3           #region  Constructors
 4 
 5           /// <summary>
 6           ///  Creates a new  <see cref="Contract"/>  instance.
 7           /// </summary>
 8           public  Contract() :  base () { }
 9 
10 
11           #endregion
12 
13           ///   <summary>
14           ///  合同签约人 - -b 名字比较烂
15           ///   </summary>
16           public   string  ContractPersonName
17          {
18               get
19              {
20                   if  ( this .FContractPerson  !=   null   &&   this .FContractPersonSource  ==   null )
21                       throw   new  Exception( " 没有使用Deepload " );
22 
23                   if  ( this .FContractPerson  ==   null )
24                       return  String.Empty;
25 
26                   return   this .FContractPersonSource.FName;
27              }
28          }
29 
30      }

建一个实体数据源和一个GridView,允许DeepLoad但不允许递归,不允许事务,允许分页和排序,使用GetPaged方法进行查询
DeepLoad Users对象,再添加5个参数,4个输入,1个输出,PageIndex,OrderBy和PageSize都取GridView的属性
最后再添加一个过滤的参数... 
 1  < asp:DropDownList  ID ="NameList"  AutoPostBack ="true"  runat ="server" >
 2       < asp:ListItem  Value ="" > All </ asp:ListItem >
 3       < asp:ListItem > iCaca </ asp:ListItem >
 4       < asp:ListItem > Sun </ asp:ListItem >
 5       < asp:ListItem > Grubby </ asp:ListItem >
 6       < asp:ListItem > Sky </ asp:ListItem >
 7       < asp:ListItem > Moon </ asp:ListItem >
 8  </ asp:DropDownList >
 9  < data:ContractDataSource  ID ="source"  runat ="server"  EnablePaging ="True"  EnableSorting ="True"
10      EnableTransaction ="False"  SelectMethod ="GetPaged"  EnableDeepLoad ="True" >
11       < DeepLoadProperties  Method ="IncludeChildren"  Recursive ="False" >
12           < Types >
13               < data:ContractProperty  Name ="Users"   />
14           </ Types >
15       </ DeepLoadProperties >
16       < Parameters >
17           < data:SqlParameter  Name ="WhereClause"  UseParameterizedFilters ="false" >
18               < Filters >
19                   < data:ContractFilter  Column ="FContractPerson"  ControlID ="NameList"   />
20               </ Filters >
21           </ data:SqlParameter >
22           < asp:ControlParameter  Name ="OrderBy"  ControlID ="GridView1"  PropertyName ="SortExpression"
23              Type ="String"   />
24           < asp:ControlParameter  Name ="PageIndex"  ControlID ="GridView1"  PropertyName ="PageIndex"
25              Type ="Int32"   />
26           < asp:ControlParameter  Name ="PageSize"  ControlID ="GridView1"  PropertyName ="PageSize"
27              Type ="Int32"   />
28           < asp:Parameter  Name ="RecordCount"  Type ="Int32"   />
29       </ Parameters >
30  </ data:ContractDataSource >
31  < asp:GridView  ID ="GridView1"  runat ="server"  AllowPaging ="True"  DataKeyNames ="FId"
32      DataSourceID ="source"  AllowSorting ="True" >
33       < Columns >
34           < asp:BoundField  DataField ="ContractPersonName"   />
35       </ Columns >
36  </ asp:GridView >
37 

到底是网页绑定好还是后台绑定好,也要看具体的情况而定~
如果太复杂...还是后台吧...

转载于:https://www.cnblogs.com/iCaca/archive/2007/07/10/812632.html

相关文章:

  • BreezeACCESS VL
  • Linux认证基本知识介绍
  • C#新发现:异或(^)运算符也适用于布尔值
  • 通过PHP判断搜索引擎蜘蛛是否访问你的网站
  • 《WF编程》系列之28 - 本地通信事件:CallExternalMethodActivity
  • NetTiers学习笔记10---Services Rethrow Exception
  • GPRS技术在配电监控系统中的应用[转载]
  • 如何取得Access数据库中的所有用户表和视图
  • string 与stringbuilder的区别
  • LINQ 的演变及其对 C# 设计的影响
  • 读:『博客家园』 [博客人生]结婚是因为无路可逃
  • WINDOWS SERVER 2003从入门到精通之使用IIS服务配置WEB站点
  • 简单状态机Workflow基于Web应用【转】
  • 局域网客户端的管理
  • 风儿带着我们飘
  • 07.Android之多媒体问题
  • Android组件 - 收藏集 - 掘金
  • download使用浅析
  • ES6核心特性
  • HTTP请求重发
  • iOS编译提示和导航提示
  • Java 实战开发之spring、logback配置及chrome开发神器(六)
  • JavaScript 一些 DOM 的知识点
  • Swoft 源码剖析 - 代码自动更新机制
  • XML已死 ?
  • 动态魔术使用DBMS_SQL
  • 工作踩坑系列——https访问遇到“已阻止载入混合活动内容”
  • 基于webpack 的 vue 多页架构
  • 计算机常识 - 收藏集 - 掘金
  • 力扣(LeetCode)56
  • 力扣(LeetCode)965
  • 为什么要用IPython/Jupyter?
  • 我有几个粽子,和一个故事
  • 再谈express与koa的对比
  • 选择阿里云数据库HBase版十大理由
  • #Z0458. 树的中心2
  • (2)STL算法之元素计数
  • (27)4.8 习题课
  • (二)Pytorch快速搭建神经网络模型实现气温预测回归(代码+详细注解)
  • (分享)一个图片添加水印的小demo的页面,可自定义样式
  • (一)WLAN定义和基本架构转
  • (转)LINQ之路
  • (转)详解PHP处理密码的几种方式
  • ***原理与防范
  • .h头文件 .lib动态链接库文件 .dll 动态链接库
  • .NET Core Web APi类库如何内嵌运行?
  • .NET Core 控制台程序读 appsettings.json 、注依赖、配日志、设 IOptions
  • .Net 访问电子邮箱-LumiSoft.Net,好用
  • .net 提取注释生成API文档 帮助文档
  • .net反混淆脱壳工具de4dot的使用
  • .NET简谈设计模式之(单件模式)
  • .net解析传过来的xml_DOM4J解析XML文件
  • @ConditionalOnProperty注解使用说明
  • @kafkalistener消费不到消息_消息队列对战之RabbitMq 大战 kafka
  • [ 数据结构 - C++] AVL树原理及实现