首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

LINQ to SQL之DataContext的方法GetTable有关问题

2012-04-26 
LINQ to SQL之DataContext的方法GetTable问题叙述:GetTable原型:TableT GetTableT.应用:方法GetTable

LINQ to SQL之DataContext的方法GetTable问题
叙述:
  GetTable 原型:Table<T> GetTable<T>.
  应用:方法GetTable在调用时只需要指定实体类型 T 即可,
  DataContext对象会根据指定的 实体类信息 来查询
  数据库中相应的物理表,
  并将 记录信息 封装成实体类对象放入序列中返回。




问题:
  1、如何将 记录信息 封装成实体类对象?
  (如下面实际的实体类所示,实体类中并没有存储表记录的字段,如何将记录信息返回?)
  2、序列是什么?
   
  [Table(Name="dbo.部门表")]
public partial class 部门表 : INotifyPropertyChanging, INotifyPropertyChanged
  {
  private string _部门编号;
private string _部门名称;
private string _部门负责人;
private string _备注;
   
  //以下是各个字段的属性
  [Column(Storage="_部门编号", DbType="VarChar(10) NOT NULL", CanBeNull=false, IsPrimaryKey=true)]
public string 部门编号{ }
  ......
  }
 

[解决办法]
1.GetTable的实体序列是自动产生的,
你可以通过GetTable<类型>()获取 该类型的全部数据

什么是类型呢?简单说就是你数据表的名字

在这里是你的“部门表”

2序列:Ienumerable

你可以把它想象成没有索引集合,用foreach遍历
[解决办法]

探讨
引用:
(1)部门表,这个名字使用的不好,具有迷惑性,其实应该命名成部门信息。

其实每一个这样的对象对应的是一条记录,而不是一个表。

(2)序列你可以视作集合。


既然每调用一次GetTable<T>方法,就将一条记录封装在实体类对象中,那么一个表中有多条记录啊,那么其他的所有记录都保存在哪里呢

热点排行