问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

光脚丫学LINQ(024):如何通过修改DBML文件生成自定义代码

发布网友 发布时间:2022-05-03 23:16

我来回答

2个回答

懂视网 时间:2022-05-04 03:37

演示视频: http://u.115.com/file/f2bdf2a2da 演示说明 在本演示中,介绍了如何在对象模型中,使实体类的列成员来映射数据表中由数据库生成值的列; 也介绍了这种列成员自动获取数据库生成值的特性,及其实现办法; 在演示的结尾介绍了如何使用对象关系设计

演示视频:http://u.115.com/file/f2bdf2a2da

演示说明
在本演示中,介绍了如何在对象模型中,使实体类的列成员来映射数据表中由数据库生成值的列;
也介绍了这种列成员自动获取数据库生成值的特性,及其实现办法;
在演示的结尾介绍了如何使用对象关系设计器来设置由数据库生成值的列。
另外说明一下,可能是因为我数学没有学好?
演示中竟然将订单编号11084居然念成了一千一百零八十四。这回真是糗大了!^_^

演示重点
什么是由数据库生成的列?
也就是列的数值由数据库自动生成,并不需要我们提供。比如自增长列、版本列等。
通过将实体类的列成员的ColumnAttribute特性的IsDbGenerated设置为true来表示由数据库生成的列。
据此可以推断,默认情况下IsDbGenerated属性值应该为false,这样的默认值是比较合理的。
如果实体类的某个列成员表示的是数据库生成的列,那么就不要试图为这些的列成员赋值,
虽然在代码中赋值是没有问题的,但所提供的数值是不会被保存在数据库中的。
这可以通过LINQ to SQL生成的SQL命令看出来,
无论是INSERT,还是UPDATE都不会包含IsDbGenrated=true的列成员。
如果实体类列成员的ColumnAttribute.IsDbGenerated设置为true的话,
那么当LINQ to SQL执行了添加或删除操作时,都会自动的获取这些列的值,即数据库生成的值。
因此,我们无需再次显式的使用LINQ to SQL去查询这个由数据库生成的值。
实际上,当LINQ to SQL发送更新或者添加SQL命令的时候,
同时也会发送一个获取数据库生成列的数值的SELECT命令。

示例代码

2010-12-4 光脚丫思考

热心网友 时间:2022-05-04 00:45

(.dbml) 元数据文件生成 Visual Basic 或 C# 源代码。 此方法提供了一个在生成应用程序映射代码前自定义默认 .dbml 文件的机会。 这是一项高级功能。此过程中的步骤如下:1、生成 .dbml 文件。2、使用编辑器修改此.dbml文件 。 请注意,此 .dbml 文件必须通过 LINQ to SQL .dbml 文件的架构定义 (.xsd) 文件的验证。 有关更多信息,请参见 LINQ to SQL 中的代码生成。3、生成Visual Basic或C#源代码。下面的示例使用SQLMetal命令行工具。 有关更多信息,请参见 SqlMetal.exe(代码生成工具)。示例下面的代码从 Northwind 示例数据库生成 .dbml 文件。 您可以使用数据库的名称或 .mdf 文件的名称作为数据库元数据的源。SqlMetal /server:.\SQLExpress /database:Northwind /dbml:" Northwind.dbml"SqlMetal /dbml:"C:\Northwind.dbml" "C:\LINQ\Northwind.mdf"
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
粒上皇开口熟栗120g*5袋(共600g)-详细介绍 三皇王板栗介绍 品牌榜:2024年板栗十大品牌排行榜 投票结果公布【新】 为什么来大姨妈胸会胀 少儿学什么舞蹈 青年学什么舞蹈好 成年人学什么舞蹈 福州企业最低工资标准 2013年厦门的底薪是多少 生产要素的需求有哪些性质 调试技巧:如何以数组的方式查看一个指针 超声波探伤仪调试技巧 均衡器最好的调试方法 舞台专业音响调试技巧,有谁知道的?在线等 C#如何调试代码调试技巧篇 c++ 有哪些调试的技巧? 安装windows2003系统,同时运行nosql数据库,最少需要多大的内存 SQL 2005 ‘CHECK约束’ 和 ‘规则’ 区别 关系型数据库中的字段默认值、不可为空、唯一索引约束的好处和坏处是什么? 求解:才接触数据库,纯新手,求教:检查约束和规则的区别,咋感觉都差不多??? 主键约束,外键约束,空值约束,默认值约束,唯一约束,检查约束的各个作用是什么? 在表中定义的默认值和check约束,与规则对象,默认值对象有何区别 约束和数据库对象的区别在哪里 (Bo-Blog)波-博客数据库系统提示:无法连接服务器 数据库登陆不上 是不是数据库本身的问题 VS连接数据库时为什么为说无法打开登陆所求的数据库,登录失败 数据库登陆的时候登陆不上出现这样的问题是什么情况? 我把我修改的默认数据库删了,登录不了SQL server了,我的是SQL server 2008R2,网上的方法不行!急救啊 sql server 连不上 错误提示:未能建立与PC-201001281436的连接。原因:无法打开用户默认数据库。登录失败 无法打开用户默认数据库。登陆失败。 用户SA登陆失败(SQL 错误4064) 怎么解决啊 c#,linq中如何只显示数据库表的某一列或者某几列。。 如何创建自己的Linq provider C# linq Field 在数据库查出一列数据转换成int数组时报错? 如何可将数据库数据表列输出为表 java把oracle数据库里的表格(所有)显示到jsp页面上,对于动态的列名,如何生成get,set方法,求帮忙 假如我要将数据库中的一列数改为另一列数的前几个字,用语句怎么表示 C#如何通过后台设置点击按钮将数据库中指定行中的某一列字段改为1 用c#读取oracle数据库生成的零时列 数据库join到底是怎么个逻辑 数据库的JOIN,内部实现原理是怎么样的 数据库管理里的关系运算符——如(Restrict、Project、join)等等,他们的作用最好举例说明下, 谢谢! 数据库sql2005中join 有A,B,C,D 4张表,如何用数据库join语句设计表 如何获取onetrust A轮融资金额2000万美元 什么水平 SpaceX星舰估值有多少? 宁德时代将获2000万美元违约金,该企业到底违反了什么约定? 数据库 分组问题 数据库根据题目要求怎样快速分析出是否需要用到分组函数 关于数据库不是单组分组函数的问题,求人帮忙啊!!