GridView控件显示有外键实体

1).先拖入GridView控件,再拖入数据源控件 ObjectDataSource ,配置数据源控件:

1.配置SELECET得到所有数据时,得先修改自动生成代码 DAL.Room 的一个方法: if (strWhere != null && strWhere.Trim() != "")

 1         /// <summary>
 2         /// 获得数据列表
 3         /// </summary>
 4         public DataSet GetList(string strWhere)
 5         {
 6             StringBuilder strSql = new StringBuilder();
 7             strSql.Append("select RoomNum,RoomType,RoomState,BedNum,GuestNum,Descrption ");
 8             strSql.Append(" FROM Room ");
 9             if (strWhere != null && strWhere.Trim() != "")
10             {
11                 strSql.Append(" where " + strWhere);
12             }
13             return DbHelperSQL.Query(strSql.ToString());
14         }

  2.在配置DELETE删除一条数据时,得在 BLL.Room 总增加一个方法的重载,这是由于数据源控件所有的操作都是基于 Model 进行互相传值的:

 1         /// <summary>
 2         /// 删除一条数据
 3         /// 重载下一个方法,传入对象模型
 4         /// </summary>
 5         public bool Delete(Model.Room model)
 6         {
 7
 8             return Delete(model.RoomNum);;
 9         }
10         /// <summary>
11         /// 删除一条数据
12         /// </summary>
13         public bool Delete(string RoomNum)
14         {
15
16             return dal.Delete(RoomNum);
17         }

  3.还的必须指定 GridView 的一个属性【DataKeyNames="RoomNum"】,GridView中 DataKeyNames 里面存的值都相当于你表里面的标志列,当你要用到的时候就可以得到这个标志列,去得到你的其他的数据信息.就如一个隐藏的值~~!!

  4.经过上面三步,【删除】【查找】都可以进行实现,但是对于【更新】由于现今无法实现对外键实体的展示,所以总是失败,怎么处理才能将外键实体显示出来???

  解决方案:添加【自定义模板】----用来显示外键实体,代码如下:

 1 <asp:TemplateField HeaderText="房间类型">
 2                 <ItemTemplate>
 3                     <asp:Label ID="Label1" runat="server" Text=‘<%# Eval("RoomType.TypeName") %>‘></asp:Label>
 4                 </ItemTemplate>
 5             </asp:TemplateField>
 6             <asp:TemplateField HeaderText="房间价格">
 7                 <ItemTemplate>
 8                     <asp:Label ID="Label2" runat="server" Text=‘<%# Eval("RoomType.Price") %>‘></asp:Label>
 9                 </ItemTemplate>
10             </asp:TemplateField>

-------------------------------------------上面两截代码中注意的是 必须使用关键字【Eval】,而不是【Bind】,这是由于Bind是双向绑定~~;另外 Eval()方法还有一个重载()----第一个参数为绑定的字段,第二个参数为 显示的格式。其中代码段中的"{0:C}"----C表示已金钱的格式显示

1 <asp:TemplateField HeaderText="房间价格">
2                 <ItemTemplate>
3                     <asp:Label ID="Label2" runat="server" Text=‘<%# Eval("RoomType.Price","{0:C}") %>‘></asp:Label>
4                 </ItemTemplate>
5             </asp:TemplateField>

这样基本就可以显示出【外键实体的信息】,但是

时间: 2024-10-10 19:07:22

GridView控件显示有外键实体的相关文章

GridView控件通过bit值显示复选框状态

前几天用VS2013做了一个Asp.net下用GridView控件显示数据选中状态的小例子,引发了关于bit的一些新认识. 先简单说说我这个例子吧. 在VS里新建一个web窗体,然后拖入一个GridView控件,绑定Sql Server数据库里的数据源,再通过设置模板添加一个新列.在这个列中加入一个CheckBox控件,然后绑定到数据库里的字段. 开始我设置这个字段的类型为varchar,字段的值为True.False等.绑定后却无法达到想要的效果,即F5后网页内数据库isText字段值为Tru

数据绑定技术一:GridView控件

在网站或应用程序中,要显示数据信息,可用到ASP.NET提供的数据源控件和能够显示数据的控件. 一.数据源控件 数据源控件用于连接数据源.从数据源中读取数据以及把数据写入数据源. 1.数据源控件特点 使用数据源控件可以不用编写任何代码就可以实现页面的数据绑定. 2.数据源控件的种类 .NET框架提供了如下几个数据源控件: SqlDataSource,它用来访问存储在关系数据中的数据源,它与SQL Server一起使用时支持高级缓存功能.当数据作为DataSet对象返回时,此控件还支持排序.筛选和

Repeater, DataList, 和GridView控件的区别

http://blog.sina.com.cn/s/blog_646dc75c0100h5p6.html http://www.cnblogs.com/phone/archive/2010/09/15/1826891.html 1. GridView 控件 GridView 控件用于显示表中的数据.通过使用 GridView 控件,您可以显示.编辑.删除.排序和翻阅多种不同的数据源(包括数据库.XML 文件和公开数据的业务对象)中的表格数据. 显示表格数据是软件开发中的一个周期性任务.ASP.N

GridView控件相关

---恢复内容开始--- GridView控件的[AutoGenerateColumns]属性(bool类型)的意思是----运行时是否基于关联的数据源自动生成列. 这样造成的影响是列的标题自动生成无法进行修改. 想手工的控制列名,则需把这个属性设为False.然后再控件的右上角点击,出现[编辑列],或者在属性页面设置[Columns]属性,都会弹出编辑列的界面: (1).[BoundField]----绑定以文本形式显示一个字段.它的属性: HeaderText----就是显示的列名, Dat

027. asp.net中数据绑定控件之 GridView控件

GridView控件支持下面的功能: 绑定至数据源控件, 如SqlDataSource 内置排序功能 内置更新和删除功能 内置分页功能 内置行选择功能 可以编程方式访问GridView对象模型以动态设置属性 处理事件等 多个键字段 用于超链接列的多个数据字段 可通过主题和样式自定义外观 Girdview控件常用属性: BackImageUrl 背景图片 EmptyDtatText 没有任何数据时显示的文字 GridLines 网格线的样式 ShowHeader 是否显示页首连接 ShowFoot

ASP.NET编辑与更新数据(非GridView控件实现)

Insus.NET在实现<ASP.NET开发,从二层至三层,至面向对象 (5)>http://www.cnblogs.com/insus/p/3880606.html 中,没有把数据编辑与更新功能一起演示,留下给网友们自由发挥,但是还是有网友想看看Insus.NET用实现方法. 以前Insus.NET的做法,是在GridView控件中进行.如这篇视频教程<GridView Edit Update Cancel Delete>http://www.cnblogs.com/insus/

C#操作GridView控件

GridView控件是一个visualStudio自带的数据控件,它可以非常快速的将数据以表格方式显示在web页面上.下面就是一个利用GridView控件进行数据绑定的小例子,内容如下: 数据来源自一个XML文件,至于如何操作XML文件,这里不作详细描述,具体可以参考http://www.cnblogs.com/programsky/p/3816073.html 1.XML内容如下: <?xml version="1.0" encoding="utf-8"?&

C#的GridView控件复习

一,在新建一个空网站 二,在这网站新建一个default.aspx页面 三,添加一个GridView控件 四,新建一个数据库,这个数据库包含你要显示的表数据,这个表须包含主键(表的主键影响增删改的功能) 五,配置GridView控键 1,配置数据源 2,添加数据源 3,选择你的数据库所在文件路径,测试连接 4, 5,选择高级,添加可以增删改的功能,若这里不可以勾选,则是你的表没有主键 6,显示 7,将功能勾选上,则可以网站浏览显示了

GridView控件详解

一.介绍 GridView控件一表格形式显示数据源中的数据.提供对列进行排序.分页以及编辑.删除单个记录的功能. 二.绑定数据源 第一种使用DataSourceID属性.可以直接把GridView控件绑定到数据源控件上,以利用数据源控件的功能实现编辑.删除.排序.分页等功能.(初级) 第二种可以绑定到ADO.NET数据集和数据读取器对象上,但需要为所有功能编写后台代码.(一般使用这种方式) private void gridViewBind() { //获取GridView排序数据列及排序方向