LINQtoSQL的对象模型和基于Attribute的映射.doc

LINQtoSQL的对象模型和基于Attribute的映射.doc

  1. 1、本文档共22页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
LINQtoSQL的对象模型和基于Attribute的映射

LINQ to SQL的对象模型和基于Attribute的映射分下面几篇文章: (1)LINQ to SQL的对象模型和基于Attribute的映射; (2)DataContext的讨论 (3)LINQ to SQL 插入,删除,更新,调试,并发控制 (4)高级LINQ to SQL的使用 (6)LINQ to SQL的性能关注 (7)LINQ三层应用程序. LINQ to SQL的对象模型和基于Attribute的映射一:LINQ to SQL的对象模型简单:LINQ to SQL Object Relational Object DataContext Database Entity class Table Class member Column Association Foreign-key relationship ??? ??? ?? 二:如何映射(1)在LINQ to SQL中有三种映射方式:Object Relational Designer (ORD) tool SQLMetal command-line tool 手写 这里我们只关注手写: 按照上面对象模型的结构.我(在cases我们用的"AdventureWorks",我手写的感兴趣的可以下载,免高手,提供一个northwnd的下载) (2)映射数据库 在DatabaseAttribute 的attribute的Name属性指定数据库的名. [Database(Name="Database#5")] [Database(Name="AdventureWorks")] public?class?AWDB { } (3)映射table TableAttribute :表示这个实体类指示的是一个数据库的表. [Table(Name = "Customers")] [Table(Name?=?"HumanResources.Employee")] public?class?Employee { // } [Table(Name?=?"Person.Contact")] public?class?Contact { // } 要注意最好对Name属性提供完整的引用[dbo].[Customers],还有如果你已经映射table给一个实体,就不能再将其他表映射给这个实体(4)Mapping Columns ColumnAttribute ColumnAttribute:表示属性或域指示的是数据库的column. ?[Column(Name="CustomerID")] 对于ColumnAttribute给一张表: Property??? ??? ??? ????????????? Description Default Value(if any) Name 表的Column名 DbType 数据Column的类型(并不是实体类型) Storage 实体暂存域或变量(转成在SQL命令"field AS storage") IsPrimaryKey 指定当前的column是不是相应表的主键 false IsDbGenerated??????? ??? ??? ??? ??? ??? 指定当前的column是否自动产生值??? false CanBeNull 指定当前column是否允许有null值 AutoSync 告诉运行环境在INSERT或更新操作执行后得到当前column值.??? ??? ??? ? 它有四个操作:Never—不为 INSERT或UPDATE操作返回值. OnUpdate:只返回更新操作的 column值. OnInsert:只返回查入操作的column值(这样可以提供性能) Never Expression 定义计算数据column的值. IsVersion 指定当前column的版本或timestamp UpdateCheck 在LINQ to SQL中对乐观并发操作控制.有三个值:Always,Nerver,WhenChanged. IsDiscriminator 指定用一个值来鉴别column是否LINQ to SQL继承关系. 1:基本的表的Column的mapping [Column(DBType?=?"int",?IsPrimaryKey=true,?CanBeNull=false)] public?int?EmployeeID; [Column(DBType?=?"nvarchar(256)",?CanBeNull=false)] public?string?LoginID; [Column(DBType?=?"nvar

文档评论(0)

dashewan + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档