0

使用C# (.NET Core) 实现组合设计模式 (Composite Pattern)

本文的概念性内容来自深入浅出设计模式一书. 本文需结合上一篇文章(使用C# (.NET Core) 实现迭代器设计模式)一起看. 上一篇文章我们研究了多个菜单一起使用的问题. 需求变更 就当我们感觉我们的设计已经足够好的时候, 新的需求来了, 我们不仅要支持多种菜单, 还要支持菜单下可以拥有子菜单. ...

solenovex 发布于 2018-04-22 16:01 评论(0)阅读(149)
2

拒绝“高冷”词汇!初学C#中的委托

有一天,你写了好多好多带“形参”的构造函数(就是“方法”,同义),而且需要向这些构造函数里传递同样的“实参”,然后你就憨憨地一个一个函数的调用并赋予同样的“实参”,这一天就这么过去了... 又过了几天,你又要再一次调用这么多函数了,你再老老实实地一个一个函数进行调用?!聪明的你,肯定会想:真TM麻烦 ...

沙奇码丶 发布于 2018-04-22 14:41 评论(0)阅读(37)
0

反射实现Model修改前后的内容对比

在开发过程中,我们会遇到这样一个问题,编辑了一个对象之后,我们想要把这个对象修改了哪些内容保存下来,以便将来查看和追责。 首先我们要创建一个User类 然后在Main函数中声明并初始化一个User对象 因为要对比对象编辑前后的内容,所以需要备份一下这个UserA,我们来个深拷贝 接下来的工作是修改U ...

LikeHeart 发布于 2018-04-22 10:35 评论(0)阅读(37)
0

[C#] 将NLog输出到RichTextBox,并在运行时动态修改日志级别过滤

作者: "zyl910" 一、缘由 NLog是一个很好用的日志类库。利用它,可以很方便的将日志输出到 调试器、文件 等目标,还支持输出到窗体界面中的RichTextBox等目标。 而且它还支持在运行时修改配置,例如可用于实现这样的需求——在界面上做个下拉框,可动态调整RichTextBox的日志级别 ...

zyl910 发布于 2018-04-21 21:16 评论(2)阅读(31)
0

XML——对XML文档的创建与增删改查

一、创建的第一种方式 创建结果如下: 二、创建的第二种方式 创建结果如下: 三、对XML文件的添加 四、对XML文档的查询、修改、删除 方法1: 文档结构为: 方法2: 删除元素指定的特性: 删除子节点: 删除当前所有子节点: 删除当前节点的所有特性: ...

王景林的博客 发布于 2018-04-21 20:24 评论(0)阅读(25)
2

基于RabbitMQ.Client组件实现RabbitMQ可复用的 ConnectionPool(连接池)

一、本文产生原由: 之前文章《总结消息队列RabbitMQ的基本用法》已对RabbitMQ的安装、用法都做了详细说明,而本文主要是针对在高并发且单次从RabbitMQ中消费消息时,出现了连接数不足、连接响应较慢、RabbitMQ服务器崩溃等各种性能问题的解方案,之所以会出现我列举的这些问题,究基根源 ...

梦在旅途 发布于 2018-04-21 15:39 评论(3)阅读(274)
0

VS2015 推荐插件

VS2015 推荐插件///////////////////////////////////////////////////////////////////////////////////////////代码辅助及显示增强SuperCharger是原来的CodeMap在VS2013/VS2015上的 ...

左思右想 发布于 2018-04-21 13:17 评论(0)阅读(74)
2

拒绝“高冷”词汇!初学C#中实用的泛型!

初学C#,整天对着业务逻辑,写反反复复的“过程型”代码逻辑十分枯燥,不如用点新东西提升一下代码效率,让代码看起来更有逼格?! 好,下面我们看看C#中简单易学的泛型。 首先,我写了一个这样的方法 Say(string spk),并在主函数中进行调用: 如果,我说:123,则需要另一个方法 Say(in ...

沙奇码丶 发布于 2018-04-20 22:55 评论(2)阅读(73)
1

简单了解 iTextSharp实现HTML to PDF

查了下 转PDF的各种框架 发现大部分都是收费的。 发现一款免费的iTextSharp 就想玩一下 只是简单做个HTML 转PDF 没有过深的探究。 首先 我在项目中引入iTextSharp 还是老方法 要么 NuGet上下载 或者 直接命令 然后在项目中建了一个HTML 里面就是一些简单的标签 和 ...

E神9527 发布于 2018-04-20 16:08 评论(1)阅读(47)
4

使用C# (.NET Core) 实现迭代器设计模式 (Iterator Pattern)

本文的概念来自深入浅出设计模式一书 项目需求 有两个饭店合并了, 它们各自有自己的菜单. 饭店合并之后要保留这两份菜单. 这两个菜单是这样的: 菜单项MenuItem的代码是这样的: 最初我们是这样设计的, 这是第一份菜单: 这是第2份菜单: 同时有两个菜单存在的问题 问题就是多个菜单把事情变复杂了 ...

solenovex 发布于 2018-04-20 15:25 评论(3)阅读(361)
0

c# 启动线程的方式

//不带参数的启动方式 scanThread = new Thread(new ThreadStart(startThread)); scanThread.IsBackground = true; scanThread.Start(); //带参数的启动方式 endThread = new Thre ...

旗木卡卡西西 发布于 2018-04-20 15:24 评论(0)阅读(62)
1

MD5密码加密

using System; using System.Security.Cryptography; using System.Text; namespace DimoNetwork.Common.DEncrypt { public enum MD5ResultMode : byte { Strong... ...

兰博丶专属 发布于 2018-04-20 10:52 评论(0)阅读(39)
1

C#类似版本号有多个分割符可以产生的排列组合,类似版本号比较

我采用asp.net进行演示 送给有缘人吧,可以获得类似版本号的功能,也可以对比两个版本号,我这里是其他需要用逗号分割的 ...

uxinxin 发布于 2018-04-20 10:40 评论(2)阅读(38)
0

一个简单的C#+arcgis的非数据库版例子

1.首先新建一个winform的项目。 2.确保C#工具箱包含ESRI的相关控件,如果没有就需要安装SDK。 如果VS中依旧不存在esri控件解决方案如下,以VS2013为例: (1)打开注册表,定位至HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft ...

Mikkle*Chang 发布于 2018-04-20 10:15 评论(0)阅读(52)
1

Emgu学习之(一)----Emgu简介

OpenCVOpenCV是一个开源的跨平台的计算机视觉库,它的设计目标时执行速度尽量快,主要关注实时应用。可以运行在Linux、Windows、Mac OS、Android、IOS、Maemo、FreeBSD、OpenBSD等操作系统上。OpenCV采用C/C++语言开发和使用外还支持使用C#、Ru... ...

潘胜国 发布于 2018-04-19 22:39 评论(2)阅读(46)
0

XML 解析默认去掉命名空间和注释

1 /// <summary> 2 /// XML帮助类 3 /// </summary> 4 public class XmlHelper 5 { 6 /// <summary> 7 /// xml转实体 8 /// </summary> 9 /// <typeparam name="T"></t ...

Mshu_peng 发布于 2018-04-19 16:31 评论(0)阅读(44)
0

C# /VB.NET 创建PDF项目符号列表和多级编号列表

使用项目符号和编号,可以让文档的层次结构更清晰、更有条理,也更容易突出重点。在编辑文档的过程中,我个人也比较偏爱项目标号来标注文章重点信息。在之前的文章中,介绍了如何在Word中来创建项目标号和编号列表,在本篇文章中,将介绍创建PDF项目符号列表和多级编号列表的方法。 借助工具: Spire.PDF ...

E-iceblue 发布于 2018-04-19 14:15 评论(0)阅读(37)
1

C#使用AutoMapper6.2.2.0进行对象映射

先说说DTO DTO是个什么东东? DTO(Data Transfer Object)就是数据传输对象,说白了就是一个对象,只不过里边全是数据而已。 为什么要用DTO? 1、DTO更注重数据,对领域对象进行合理封装,从而不会将领域对象的行为过分暴露给表现层 2、DTO是面向UI的需求而设计的,而领域 ...

CoderLinkf 发布于 2018-04-19 11:08 评论(1)阅读(607)
0

asp.net mvc控制器激活全分析

控制器的激活默认情况下使用反射来实现的,这其中采用了DI,单例等设计模式。对于控制器的主要涉及到如下的类:ControllerBuilder、DefaultControllerFactory、DefaultControllerActivator(实现了IControllerActivator接口)、 ...

又见阿郎 发布于 2018-04-18 16:04 评论(0)阅读(75)
0

c# 如果一个对象的值为null,那么它调用扩展方法时为甚么不报错

如果一个对象的值为null,那么它调用扩展方法时会报错吗? 上述代码出现的情况不会报错,刚开始遇到这种情况时很纳闷,就去问了大牛。大牛解释如下: 扩展函数其实只是为了让代码更具有可读性, 但最终在clr中会翻译成标准的静态函数调用, 比如: 调用 "string".ExtMethod()最终会翻译成 ...

大稳·杨 发布于 2018-04-18 08:18 评论(6)阅读(170)