摘要:
目录 1.游标简介 1.0 理解定义 1.1 游标的主要作用 1.2 游标的优缺点 1.3 游标生命周期 1.4 基本语法 2.游标示例 2.0 准备测试数据 2.1 示例1-FORWARD_ONLY类型游标 2.2 示例2-SCROLL类型游标 2.3 示例3-使用游标进行更新和删除数据 2.4
阅读全文
posted @ 2020-05-27 21:36
shanzm
阅读(1493)
推荐(3)
摘要:
目录 0. 背景说明 1. 建立异常信息表ErrorLog 2. 建立保存异常信息的存储过程 3. 建立在SQL Server中打印异常信息的存储过程 4. 建立一个用于测试的存储过程抛出异常进行测试 5. 参考信息 shanzm-2020年5月13日 0. 背景说明 之前在《存储过程——C#中调用
阅读全文
posted @ 2020-05-13 20:11
shanzm
阅读(4235)
推荐(3)
摘要:
存储过程(Stored Procedure) 是在大型数据库系统中,一组为了完成特定功能的SQL 语句集,它存储在数据库中,一次编译后永久有效,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。
阅读全文
posted @ 2020-05-03 23:25
shanzm
阅读(1859)
推荐(1)
摘要:
抽象工厂模式(Abstract Factory Pattern):为创建一组相关或相互依赖的对象提供一个接口,而且无须指定它们的具体类。
产品族(产品系列):同一个具体工厂创建的不同等级的产品称为同一产品族,或是称为同一产品系列。
产品等级:又称为产品系列,指的是继承与同一个抽象产品类的所有具体产品称之为同一个产品等级
阅读全文
posted @ 2020-05-01 23:38
shanzm
阅读(1196)
推荐(0)
摘要:
单例模式(Singleton Pattern):确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。
实现单例模式的方法:私有化构造函数,添加一个静态的字段保存类的唯一实例,并提供一个访问该实例的静态方法GetInstance()
单例模式分为两种:“懒汉式单例模式”和“饿汉式单例模式”。
阅读全文
posted @ 2020-04-08 22:37
shanzm
阅读(1531)
推荐(2)
摘要:
工厂方法模式(Factory Method Pattern)也称为工厂模式,又称为虚拟构造器模式或多态模式。
在工厂方法模式中,工厂父类负责定义创建产品对象的公共接口,而工厂子类则负责生成具体的产品对象,这样做的目的是将产品类的实例化操作延迟到工厂子类中完成,即通过工厂子类来确定究竟应该实例化哪一个具体产品类。
阅读全文
posted @ 2020-04-03 22:30
shanzm
阅读(1304)
推荐(2)
摘要:
[TOC] shanzm 2020年4月1日 22:18:49 1. 简介 简单工厂模式(Simple Factory Pattern) :定义一个工厂类,根据不同的参数,创建并返回不同的类。其中这些类具有一个公共的父类或是一个接口。 简单工厂模式不属于GoF四人组提出的23种设计模式,它是最简单的
阅读全文
posted @ 2020-04-01 22:22
shanzm
阅读(3143)
推荐(0)
摘要:
[TOC] shanzm 2020年3月31日 20:17:27 0. UML 统一建模语言(Unified Modeling Language, UML )是用来设计软件蓝图的可视化建模语言。 可以参考 "统一建模语言" 于此不详述,仅展示使用Visual Studio自动生成的类图样式 需要说明
阅读全文
posted @ 2020-03-31 20:38
shanzm
阅读(904)
推荐(0)
摘要:
[TOC] shanzm 2020年3月25日 21:28:09 0. 任务调度 比如说,财务系统需要在每个月初生成上一个月的财务报表。 比如说,每天或每周固定时间对数据库更新。 比如说,每天定时发送邮件。 这些需要在某个 预定的时间点周期性的 执行某个特定的任务的功能(也就是任务调度),可以使用任
阅读全文
posted @ 2020-03-25 21:33
shanzm
阅读(2133)
推荐(4)
摘要:
[TOC] shanzm 2020年3月17日 20:06:01 0.关于IOC 相关概念类知识,可以参考: ".NET中的控制反转及AutoFac的简单说明" 1.主要细节 使用反射程序集的方式获取对象的类型 通过反射的方式获取指定类型的的所有公共属性 通过特性的方式筛选需要注入对象的类型 递归的
阅读全文
posted @ 2020-03-17 20:10
shanzm
阅读(2683)
推荐(4)
摘要:
[TOC] shanzm 2020年3月16日 02:17:35 1.控制反转 1.1 什么是依赖? 依赖 是面向对象中用来描述类与类之间一种关系的概念。两个相对独立的对象,当一个对象负责构造另一个对象的实例,或者依赖另一个对象的服务,这样的两个对象之间主要体现为 依赖关系 1.2 什么是控制反转?
阅读全文
posted @ 2020-03-16 02:21
shanzm
阅读(1690)
推荐(10)
摘要:
[TOC] shanzm 2020年3月7日 23:12:53 0.背景引入 现在的.net异步编程中,一般都是使用 基于任务异步模式 (Task based Asynchronous Pattern,TAP)实现异步编程 可参考 "微软文档:使用基于任务的异步模式" 基于任务的异步模式,是使用 命
阅读全文
posted @ 2020-03-07 23:23
shanzm
阅读(1747)
推荐(9)
摘要:
shanzm-2020年2月16日 00:45:04 1.简介 System.Threading.Tasks中的类型被称为任务并行库(Task Parallel Library,TPL)。 System.Threading.Tasks 命名空间是.NET Framework4.0所提供, “TPL使
阅读全文
posted @ 2020-02-16 01:01
shanzm
阅读(1837)
推荐(13)
摘要:
shanzm-2020年2月11日 18:55:50 1.AMP模式简介 在.net1.x的版本中就可以使用IAsyncResult接口实现异步操作,但是比较复杂,这种称之为异步编程模型模式 (Asynchronous Programming Model, APM),也称为IAsyncResult模
阅读全文
posted @ 2020-02-11 19:01
shanzm
阅读(1015)
推荐(0)
摘要:
shanzm-2020-02-10 20:56 0.为什么要异步编程 “有些程序操作会花费较长时间。设想一下这样的几种情况:一个单线程程序调用一个远程对象的方法,或是调用一个执行耗时数据库查询的方法,或是下载一个大文档,或是向一个外部文件写500行的文字。在执行这些操作时,应用程序会显得挂起很长时间
阅读全文
posted @ 2020-02-10 20:56
shanzm
阅读(384)
推荐(0)
摘要:
志铭 2020年2月8日 03:32:03 这几天无聊看书,《精通C 》和《C 图解教程》,几本书对比者看,都是旧版本的书,发现两本书中的一个矛盾的地方: 《精通C (第6版)》P571:说明:“如果异步调用一个无返回值的方法,仅仅调用BeginInvoke()就可以了。在这种情况下,我们不需要缓存
阅读全文
posted @ 2020-02-08 04:07
shanzm
阅读(987)
推荐(1)
摘要:
[TOC] 志铭 2020年1月23日 11:49:41 1.单元测试概念 什么是单元测试? 单元测试(unit testing)是一段自动化的代码,用来调用被测试的方法或类,而后验证基于该方法或类的逻辑行为的一些假设。 简而言之说:单元测试是一段代码(通常一个方法)调用另外一段代码,随后检验一些假
阅读全文
posted @ 2020-01-23 11:57
shanzm
阅读(3797)
推荐(5)
摘要:
志铭-2020年1月17日 23:18:37 0.简介 Log4Net库是Apache log4j框架在 .NET平台下的实现,其开源免费。它可以将日志分不同的等级,以不同的格式,输出到不同的媒介。 官网地址:http://logging.apache.org/log4net/index.html
阅读全文
posted @ 2020-01-17 23:33
shanzm
阅读(7468)
推荐(7)
摘要:
[toc] "示例完整源码地址" shanzm 2020年1月10日 10:10:10本文只是我的一个Github仓库的自述文件,详细的各个NoSQL的驱动API可查看 "仓库" 中的代码 0 .net中的缓存对象 因为需要向服务器多次请求相同的数据,为了减轻服务器压力,所以引入缓存。 在.net中
阅读全文
posted @ 2020-01-10 10:49
shanzm
阅读(1775)
推荐(1)
摘要:
[TOC] shanzm 2019年8月23日 19:59:46 1. 可空类型修饰符(T?) 强类型语言中引用类型可以为空,如: 而你若是定义一个值类型为空,则是会报错的。 然而,在处理数据库和其他包含可能未赋值的元素的数据类型时,我们希望可以将 null 赋值给数值类型或布尔型的功能特别有用。例
阅读全文
posted @ 2019-08-23 21:40
shanzm
阅读(1140)
推荐(1)
摘要:
UnitTesting shanzm 右键-->在新标签页中打开图片,即可查看原图,图片超乎你想像的大! 源代码:https://github.com/shanzm/UnitTesting
阅读全文
posted @ 2019-08-09 01:58
shanzm
阅读(249)
推荐(0)
摘要:
UnitTesting shanzm 右键-->在新标签页中打开图片,即可查看原图,图片超乎你想像的大!
阅读全文
posted @ 2019-08-09 01:37
shanzm
阅读(160)
推荐(0)
posted @ 2019-08-04 22:46
shanzm
阅读(322)
推荐(0)
摘要:
目录1.简介1.1 概念1.2 具体用处2.具体的语法2.1 常用的元字符2.2 反义元字符2.3 转义2.4 注释2.5 重复匹配2.6 字符集合2.7 贪婪和懒惰2.8 分支条件2.9 子表达式(分组)2.10 后向引用(回溯引用)2.11 前后查找(零宽断言)2.12 对前后查找取非(负向零宽
阅读全文
posted @ 2019-04-29 16:17
shanzm
阅读(690)
推荐(0)
摘要:
目录: "1.关于TOC" "2.关于转义符" "3.绘图" "3.0 绘图配色主题" "3.1 Flowchart(流程图)" "3.2 Sequence diagram(顺序图)" "4 保存为HTML" shanzm 1.关于TOC Github不支持TOC,所以我们要自己写目录再给目录加连接
阅读全文
posted @ 2019-04-08 00:53
shanzm
阅读(6236)
推荐(0)
posted @ 2019-03-21 21:27
shanzm
阅读(261)
推荐(0)
摘要:
JavaScript shanzm
阅读全文
posted @ 2019-03-18 19:56
shanzm
阅读(212)
推荐(0)
摘要:
第三章 shanzm [TOC] 注:笔记中的SQL语句只在SQL Server2014上测试过,不一定适应其他的DBMS,SQL server默认输出结果是网格格式,在此之后改为文本格式。 3.1 叠加两个行集 问题: 你想返回保存在多个表中的数据 解决方案: 联合查询 ,使用 合并多个表中的行
阅读全文
posted @ 2019-03-06 02:26
shanzm
阅读(340)
推荐(0)
摘要:
shanzm 1 内连接(inner join) 内连接又称为等值连接(equal join),他是基于两个表之间的某列相等来做连接。 内连接有隐式的连接和显式的连接,二者是一样的,只不过写法不一样。 1.1 隐式的内连接 使用where 子句 select e.ename,d.loc from E
阅读全文
posted @ 2019-02-16 22:29
shanzm
阅读(254)
推荐(0)
摘要:
C shanzm [TOC] 简介 反射(reflection)是什么? 在《精通C 》中是这么说的“反射就是一个运行库发现的过程”。 举例来说,通过反射,可以得到一个给定的 .dll或 .exe程序集所包含的所有类型的列表,这个列表包括给定类型定义的方法、字段、属性和事件。 引入 1.新建类库 右
阅读全文
posted @ 2019-02-13 18:49
shanzm
阅读(298)
推荐(0)
摘要:
第二章 shanzm [TOC] 2.1 以指定顺序返回查询结果 问题: 你想显示部门编号为 10 的员工的名字、职位和工资,并根据工资从低到高排序。 解决方案: 使用 代码如下: 当然你可以使用多字段排序 比如先按照sal升序排序,然自后按照入职日期降序排列 【注意】 1. 默认是升序,即 2.
阅读全文
posted @ 2019-02-11 14:56
shanzm
阅读(413)
推荐(0)
摘要:
第一章 shanzm [TOC] 1.1检索所有行和列 问题:你有一张表,并且想查看表中的所有数据。 解决方案1: 解决方案2: 说明: 建议使用方案2,因为别人看你的代码的时候不一定知道你查询的表里面的列,所以还是写出查询的具体列更方便阅读。其次从优化的角度来说,尽量避免“ select ” 的存
阅读全文
posted @ 2019-02-09 18:22
shanzm
阅读(810)
推荐(1)
posted @ 2019-02-08 00:27
shanzm
阅读(6)
推荐(0)
摘要:
" 转自Github:enochtangg/quick SQL cheatsheet " 目录 1. " 查找数据的查询 " 2. " 修改数据的查询 " 3. " 聚合查询 " 4. " 连接查询 " 5. " 视图查询 " 6. " 修改表的查询 " 1. 查找数据的查询 1.1 SELECT
阅读全文
posted @ 2019-02-07 23:35
shanzm
阅读(459)
推荐(0)
摘要:
shanzm-2019-02-07 15:48 新建html文件,保存之后,输入“!”,按Tap(或Enter)键,自动生成HTML结构 标签只要直接输入标签名(不要输入<>),按Tap(或Enter)键自动生成完整的标签 输入标签和id:标签名#id名 输入“span#sp",Tap(或Enter
阅读全文
posted @ 2019-02-07 15:48
shanzm
阅读(8883)
推荐(0)
摘要:
[TOC] 第二章 shanzm 1.建立员工表——EMP 字段说明: |EMP(员工表)字段|说明| | | | EMPNO|工号 ENAME|姓名 JOB|工种 MGR|上级编号 HIREDATE|雇佣日期 SAL|工资 COMM|奖金 DEPTNO|部门编号 2.建立部门表——DEPT 字段说
阅读全文
posted @ 2019-02-05 16:05
shanzm
阅读(577)
推荐(2)
摘要:
shanzm-2019-02-03 00:35 1. 简介 我们的方法都是与声明他的类的相关联(我们现在写的各个方法都是在类中定义,所以我们调用方法都是用该方法所属类的实体对象调用)。 在C#3.0中的扩展方法的特征,允许声明的方法与不是声明该方法的类相关联。 2. 简单实例 下面我们定义了一个Pe
阅读全文
posted @ 2019-02-03 00:35
shanzm
阅读(1058)
推荐(0)
摘要:
[TOC] ## 1. 简介 1. 事件是一种类型安全的委托(具体实例说明见《精通C#》 --10.5 C#事件) 为什么这么说呢?可以类比属性和字段,属性是对字段的封装,其实 事件也就是封装了一个委托。 但是你要知道:委托是一种自定义的数据类型,事件只是一种类的成员。 2. 那么现在你要问:事件到
阅读全文
posted @ 2019-01-31 15:24
shanzm
阅读(4090)
推荐(5)
摘要:
[TOC] shanzm 2019 01 29 01:15 1.委托的定义 【定义】:委托是C 中函数回调机制,就是c语言中的函数指针在面向对象中的封装;简而言之就是函数指针。 它定义了方法的类型,使得可以将方法当作另一个方法的参数来进行传递。 委托和类相似,都是用户自定义的一种类型,只不过类表示的
阅读全文
posted @ 2019-01-29 01:15
shanzm
阅读(1141)
推荐(0)
posted @ 2019-01-06 00:22
shanzm
阅读(10)
推荐(0)