SqlMetal生成的DBML文件信息
[Database(Name="AdventureWorks")] --> 映射数据库
[Table(Name="Customers")] --> 映射表
[Column(Name="CustomerID")] --> 映射字段
ColumnAttribute有以下内容:
Name --> 列名
DbType --> 数据列的类型
Storage --> 类的暂存字段或变量(对应数据列字段)
IsPrimaryKey --> 是否主键
IsDbGenerated --> 是否自增
CanBeNull --> 是否允许null值
AutoSync --> 在Insert或Update操作执行后得到当前Column值
Never: 默认值,不为插入更新操作返回值
OnUpdate: 只返回更新操作的值
OnInsert: 只返回插入操作的值
Expression --> 数据计算数据列的值
IsVersion --> 指定当前列的版本或时间戳
UpdateCheck --> 在LINQ to SQL中对乐观并发操作控制
Always, Nerver, WhenChanged IsDiscriminator --> 鉴别列是否LINQ to SQL继承关系
RelationShips: LINQ to SQL定义一个AssociationAttribute属性表示关系,这个属性与EntitySet(TEntity)和EntityRef(TEntity)类型一起使用表示在数据库中外键关系
数据库中表的关系指的是主外键,LINQ to SQL 的主键是通过IsPrimaryKey来设置的,外键关系用AssociationAttribute决定
AssociationAttribute内容:
Name --> 关系名
Storage --> 暂时存储的字段或变量
IsUnique --> 外键是否有唯一约束
ThisKey --> 在实体类的成员上标识,表示本成员的联合键值
otherkey --> 在多个目标实体上标识,表示与其他成员的联合键值
EntitySet类:设置外键的实体 与EntityRef结合-->EntityRef引用外键的实体
·一对多
1在M端:以EntityRef形式出现
M在1端:以EntitySet形式出现
·一对一 在各自的类中,均以EntityRef出现
·多对多:表的主键通常还有其他两个表的外键混合在表中
Linq to sql 对非侵入式和侵入式映射都支持
有哪几种Attribute呢?
TableAttribute
ColumnAttribute
AssociationAttribute
DatabaseAttribute
ProviderAttribute
FunctionAttribute
AutoSync --> 自动同步 是一个枚举
public enum AutoSync { Default, Always, Never, OnInsert, OnUpdate }
解释:在执行insert和update操作后,这个类的属性如何和数据库表对应的字段进行同步
AutoSync.Default --> 列在数据库中有默认值,IsDbGenerated属性标记为true时则同步
AutoSync.Always --> 总是进行同步
AutoSync.Never --> 从不进行同步
AutoSync.OnInsert --> 在执行Insert操作后同步
AutoSync.OnUpdate --> 在更新的时候同步
在执行insert时,还会看到一个select代码,但我们并没有执行select操作,其实是AutoSync的原因,默认的时候IsDbGenerated为true的列是会被查出来返回的。
CanBeNull --> 是否允许null
DbType --> 创建表时,使用DbType指定列的数据类型
Expression --> 表示一个计算列,数据表的列通过计算获取的
IsDbGenerated --> 是否值在数据库中自动生成
IsPrimarykey --> 是否主键
IsVersion
UpdateCheck
Name --> 属性名和列表不一致时指定
Storage --> 赋值给私有字段而不是直接赋值给属性
Association:用来建立实体之间的关系
ThisKey --> 用来标识和别的对象关联的键,如果没有指明就用本类属性上标识有IsPrimaryKey的了
OtherKey --> 用来定义关联的类的键,如果没有指定就用关联的那个类的标识列了
Name --> 指定关系名,是利用映射动态创建数据库的时候建立关系用的
SqlMetal生成的DBML文件信息的更多相关文章
- [转]Sublime Text 新建文件快速生成Html【头部信息】和【代码补全】、【汉化】
Sublime Text 新建文件快速生成Html[头部信息]和[代码补全].[汉化] 真心越来越喜欢sublime 这个工具,高效便捷,渐渐离不了了! 安装package control简单的安装方 ...
- Asp.net中存储过程拖拽至dbml文件中,提示无法获得返回值
Asp.net中存储过程拖拽至dbml文件中,提示无法获得返回值,去属性表中设置这时候会提示你去属性表中更改返回类型. 其实存储过程返回的也是一张表,只不过有时候存储过程有点复杂或者写法不规范的话不能 ...
- 通过HTML5的Drag and Drop生成拓扑图片Base64信息
HTML5 原生的 Drag and Drop是很不错的功能,网上使用例子较多如 http://html5demos.com/drag ,但这些例子大部分没实际用途,本文将搞个有点使用价值的例子,通过 ...
- Bitmap文件格式+生成一个BMP文件
Bitmap的文件格式: #define UINT16 unsigned short #define DWORD unsigned int #define WORD short #define LON ...
- 基于MVC4+EasyUI的Web开发框架经验总结(14)--自动生成图标样式文件和图标的选择操作
在很多Web系统中,一般都可能提供一些图标的选择,方便配置按钮,菜单等界面元素的图标,从而是Web系统界面看起来更加美观和协调.但是在系统中一般内置的图标样式相对比较有限,而且硬编码写到样式表里面,这 ...
- vs2008生成的各种文件
一.sln文件 .sln(Solution)解决方案文件,表示一个项目组,他通常包含一个项目中所有的工程文件信息. 二.suo文件 suo(Solution User Option ...
- vs 自动生成core dump文件
一直以来觉着core dump这个东西很神奇,在初步学习的时候也没有个大方向,最近项目需要记录程序崩溃时的日志信息,因此在网上寻找相关的信息,此时core dump也成为了我重点关注的东西. 说说我的 ...
- 由动态库文件dll生成lib库文件(手动生成.def文件,然后使用lib命令编译,非常牛),同理可使用dll生成.a库文件
本文基于OpenBlas的编译和安装,来说明如何从一个dll文件生成lib库文件. 参考OpenBlas的说明“Howto generate import library for MingW”,和Mi ...
- Qt之生成Window资源文件(.rc 文件)
简述 qmake 可以随意地自动生成一个适当填充的 Windows 资源文件.本节主要讲解如何用 qmake 处理一个 Windows 资源文件,并将其链接到一个可执行应用程序(EXE)或动态链接库( ...
随机推荐
- 51nod 算法马拉松18 B 非010串 矩阵快速幂
非010串 基准时间限制:1 秒 空间限制:131072 KB 分值: 80 如果一个01字符串满足不存在010这样的子串,那么称它为非010串. 求长度为n的非010串的个数.(对1e9+7取模) ...
- 从零开始学 Java - CentOS 下安装 Nginx
早上下起了暴雨 闹钟还未响起就听到雨滴哗啦啦击打窗户的声音,被吵醒了.起床上班,在楼下的十字路口,暴雨大到完全看不清对面,两个穿着雨衣的交警站在路口中间指挥着过往的车辆,大家都慌慌张张.急急忙忙的打着 ...
- PowerDesigner15在win7-64位系统下对MySQL 进行反向工程以及建立物理模型产生SQL语句步骤图文傻瓜式详解
1.安装PowerDesigner15.MySQL5.不详细讲解了.网上一大把.请各位亲参考去. 2.安MyODBC-standard-3.51.0.7-win.msi.mysql-connector ...
- java web学习总结(六) -------------------servlet开发(二)
一.ServletConfig讲解 1.1.配置Servlet初始化参数 在Servlet的配置文件web.xml中,可以使用一个或多个<init-param>标签为servlet配置一些 ...
- Jsp静态包含和动态包含的区别
1 <%@include file="xxx.jsp"%>为jsp中的编译指令,其文件的包含是发生在jsp向servlet转换的时期,而<jsp:include ...
- js事件委托
什么是事件委托:通俗的讲,onclick,onmouseover,onmouseout,等就是事件,委托呢,就是让别人来做,这个事件本来是加在某些元素上的,然而你却加到别人身上来做,完成这个事件. 也 ...
- 图片效果集合(js、jquery或html5)
1.jQuery HTML5 幻灯片使用支持HTML5的浏览器会有特殊效果,即切换图片时颜色的改变文章:http://keleyi.com/a/bjac/b8i3xdui.htm效果:http://k ...
- 纯CSS打造好看的按钮样式
好看的按钮.链接.div样式,效果预览: http://hovertree.com/code/run/css/s8o19792.html 发现今天积分和排名不错: 代码如下: <!DOCTYPE ...
- 【单页应用】view与model相关梳理
前情回顾 根据之前的学习,我们形成了一个view与一个messageCenterview这块来说又内建了一套mvc的东西,我们这里来理一下首先View一层由三部分组成:① view② dataAdpt ...
- 安全生产应急救援指挥系统之GIS一张图-flex/java
开发语言是flex.java,开发平台是myeclise.eclise,后台数据库是oracel或sqlserver,开发接口是arcgis api for flex,提供以下的功能: 1.地图框选搜 ...