博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
LINQ-to-SQL那点事~耳目一新的partial class 和 partial method
阅读量:5888 次
发布时间:2019-06-19

本文共 715 字,大约阅读时间需要 2 分钟。

当你打开扩展名为dbml的LINQ-to-SQL的文件后,你将会看到很多用partial修饰符来修饰的方法,类等,它们是用来做什么的呢?起初到win form时代也这个东西,partial译为“部分”,就是说它只是某个东西的一部分,你可以在其它地方再去扩展它,起初微软就认为对于一个类来说,可能不是一个人做涉及,它可能是几个人同时去干预它,所以,它提出的“分部类 partial class”的概念,它之后被非常好的应用到了LINQ-to-SQL中。

对于一个由生成器为我们生成的模型来说,LINQ-to-SQL一定不知道我们以后要做什么,它只能把最标准的代码为我们生成,可能是一个表对象,一些表属性,固定的行为,事件等等,但与业务相关的东西它无法生成,这时,它将类,方法做成了partial,如图:

这使我们可以在DBML模型外部去扩展这个User_Info类,它里面也有partial method,事实上,partial method只能被实现一次,必须返回值必须是void,一般地,在DBML模型中只是规定了固定的method签名,而真到的实现你可以自己在扩展的class中去实现。

像下面三个partial method是公用的,对于每个实现它们都是统一的,其中OnCreated是指当类型被new时,去执行本方法,有时,我们确实需要这样去做

对于微软自己生成的LINQ-to-SQL(DBML)文件,我们通过查看它的源代码,确实使我们耳目一新,另一方面也感觉到了C#语言的魅力,而我们当初抛弃JAVA(不思进取的语言)是正确的选择,呵呵!

本文转自博客园张占岭(仓储大叔)的博客,原文链接:,如需转载请自行联系原博主。

你可能感兴趣的文章
asp功放怎么装_功放机维修常见方法,小编教您如何维修功放机
查看>>
手机真机访问开发_手机真机和开发者工具图片上传格式不一致
查看>>
直系同源基因ks_系统发育基因组学揭开跳蚤的身世之谜
查看>>
lodop直接打印怎么去除水印_怎么去除抖音短视频水印 去除抖音短视频水印教程...
查看>>
java 同时修改同一个数据_211大四Java面试,题目和答案
查看>>
兔子maya骨骼绑定_战神4角色绑定与过场动画制作
查看>>
map写法 scala语言_一份简易Scala编程指南请你查收。
查看>>
华为交换机eth口作用_Eth-trunk配置
查看>>
物联网查流量_物联网流量卡分析以及正确的选择
查看>>
一个pom文件中出现了两个相同的依赖_一个优雅的Dockerfile是怎样炼成的?
查看>>
brvah树状结构默认展开第一个_「Linux笔记」系统目录结构
查看>>
两个rsa密文相乘还能解密吗_OneDone:针对OpenSSL的恒定时间盲RSA的基于单解密EM的攻击(上)...
查看>>
rust游戏解封了吗_Reddit网友:2020年PUBG依然是个值得购买的游戏吗?
查看>>
apex图表使用饼图居中_使用java实现各种数据统计图(柱形图,饼图,折线图)...
查看>>
dell主板40针开机针脚_电脑无法开机的常见问题:解决方法汇总
查看>>
中路径查找器的功能_死磕Tomcat系列(4)——Tomcat中的类加载器
查看>>
条件查询_ThinkPHP where方法:设置查询或操作条件
查看>>
文字 竖排居中_微信签名居中“新”代码,终于回来了
查看>>
轨道角度分布图_上海轨道交通9号线客流的时空特征和乘客组成研究
查看>>
曝光原理_超级干货!泡芙膨胀原理被曝光,谁还敢说泡芙难做!
查看>>