Parallel.For
摘要:Parallel.For 你可能忽视的一个非常实用的重载方法 说起Parallel.For大家都不会陌生,很简单,不就是一个提供并行功能的for循环吗? 或许大家平时使用到的差不多就是其中最简单的那个重载方法,而真实情况 下Parallel.For里面有14个重载,而其中那些比较复杂的重载方法,或许
阅读全文
同步 异步
摘要:同步 VS 异步 同步请求资源 请求msdn上的一个页面计算页面大小 static void Main(string[] args) { string url = "https://docs.microsoft.com/zh-cn/dotnet/core/api/system"; try { Web
阅读全文
队列工厂
摘要:队列工厂之(MSMQ) 最近vs2017神器正式版发布让人很是激动,vs2017支持了很多语言的开发,从前端-后端-底层的支持,堪称是工具中的神器;netcore我喜爱的架构之一也得到了大力的宣传,应群友的邀请将在队列工厂(msmq,redis,rabbitmq)一些列文章过后,继续增加.netco
阅读全文
C#6
摘要:C#6 1. 只读自动属性(Read-only auto-properties) C# 6之前我们构建只读自动属性: 1 public string FirstName { get; private set; } 2 public string LastName { get; private set
阅读全文
UnitOfWork
摘要:数据访问层之UnitOfWork 接上文 项目架构开发:数据访问层之IQuery 本章我们继续IUnitOfWork的开发,从之前的IRepository接口中就可以看出,我们并没有处理单元事务, 数据CUD每次都是立即执行的,这样有一些不好的地方,比如数据访问次数会增多,一笔数据的完整性无法保证
阅读全文
数据访问层之Repository
摘要:数据访问层之Repository 接上文 项目架构开发:数据访问层之Logger 本章我们继续IRepository开发,这个仓储与领域模式里边的仓储有区别,更像一个工具类,也就是有些园友说的“伪仓储”, 这个仓储只实现单表的CURD与Query,都是通过主键ID或拉姆达表达式进行操作的,返回的都是
阅读全文
异常分析
摘要:程序异常分析指南 在Linux上编写运行C语言程序,经常会遇到程序崩溃、卡死等异常的情况。程序崩溃时最常见的就是程序运行终止,报告Segmentation fault (core dumped)错误。而程序卡死一般来源于代码逻辑的缺陷,导致了死循环、死锁等问题。总的来看,常见的程序异常问题一般可以分
阅读全文
Logger
摘要:数据访问层之Logger 接上文 项目架构开发:数据访问层之Cache 本章我们继续ILogger的开发 ILogger.cs 1 public interface ILogger 2 { 3 void Info(object message); 4 void Info(object message
阅读全文
net平台的rabbitmq
摘要:net平台的rabbitmq使用封装 前言 RabbitMq大家再熟悉不过,这篇文章主要整对rabbitmq学习后封装RabbitMQ.Client的一个分享。文章最后,我会把封装组件和demo奉上。 Rabbitmq的运作 从下图可以看出,发布者(Publisher)是把消息先发送到交换器(Exc
阅读全文
C# .NET数据库操作
摘要:C# .NET更智能的数据库操作的封装完整版(重构) 前述: 第一次发表文章,不过是对数据库简单的封装,主要是阐述下思路。那么在上篇文章,在大家的指导下和提出意见,并自己对代码进行了思考。在这两天我重构了新的框架,我觉得我写的可以称得上框架,为什么?请大家往下看。不过在项目中没有很多注释。笔者除了课
阅读全文
C#List实现行转列
摘要:List实现行转列的通用方案 List实现行转列的通用方案 最近在做报表统计方面的需求,涉及到行转列报表。根据以往经验使用SQL可以比较容易完成,这次决定挑战一下直接通过代码方式完成行转列。期间遇到几个问题和用到的新知识这里整理记录一下。 阅读目录 问题介绍 动态Linq System.Linq.D
阅读全文
C#步骤控件
摘要:C#开发step步骤条控件 现在很多的javascript控件,非常的不错,其中step就是一个,如下图所示: 那么如何用C#来实现一个step控件呢? 先定义一个StepEntity类来存储步骤条节点的信息: 1 public class StepEntity 2 { 3 public strin
阅读全文
Net锁
摘要:Net分布式锁的实现 序言 我晚上有在公司多呆会儿的习惯,所以很多晚上我都是最后一个离开公司的。当然也有一些同事,跟我一样喜欢在公司多搞会儿。这篇文章就要从,去年年末一个多搞会的晚上说起,那是一个夜黑风高的晚上,公司应该没有几个人在啦,我司一技术男悠悠的走到我的背后,突然一句:“还没走啊?”!“我日
阅读全文
CLR托管内存
摘要:在物理内存中观察CLR托管内存及GC行为 虽然看了一些书,还网络上的一些博文,不过对CLR托管内存细节依然比较模糊。而且因为工作原因总会有很多质疑,想要亲眼看到内存里二进制数据的变化。 所以借助winhex直接查看内存以证实书上的描述或更进一步揣摩CLR托管内存的运作方式,这里写下来跟大家一起分享(
阅读全文
C#Redis 主从复制
摘要:C#Redis 主从复制 一、前戏 下面的列表清楚的解释了Redis Replication的特点和优势。 1). 同一个Master可以同步多个Slaves。 2). Slave同样可以接受其它Slaves的连接和同步请求,这样可以有效的分载Master的同步压力。因此我们可以将Redis的Rep
阅读全文
用分库的思想来分表
摘要:用分库的思想来分表 简介 在大型项目中,我们会遇到分表分库的情景。 分库,将不同模块对应的表拆分到对应的数据库下,其实伴随着公司内分布式系统的出现,这个过程也是自然而然就发生了,对应商品模块和用户模块,我们会建立商品服务和用户服务,各个服务访问各自的数据库,系统间的交互,通过远程调用实现,而不是直接
阅读全文
前后端分离的轻量级内容管理框架
摘要:分享一个前后端分离的轻量级内容管理框架(第二篇前后端交互数据结构分析) 这是 CMS 框架系列文章的第二篇,第一篇开源了该框架的代码和简要介绍了框架的目的、作用和思想,这篇主要解析如何把sql 转成标准 xml 配置文件和把前端post的增删改数据规范成方便后台解析的结构,以实现后端自动化操作数据库
阅读全文
.NET 即时通信,WebSocket
摘要:.NET 即时通信,WebSocket 即时通信常用手段 1.第三方平台 谷歌、腾讯 环信等多如牛毛,其中谷歌即时通信是免费的,但免费就是免费的并不好用。其他的一些第三方一般收费的,使用要则限流(1s/限制x条消息)要么则限制用户数。 但稳定性什么都还不错,又能将服务压力甩出 2.System.Ne
阅读全文
C#7
摘要:C#7 阅读目录 out变量 元组(Tuples) 模式匹配(Pattern matching) 本地引用和返回(Ref locals and returns) 本地函数(Local functions) 表达式可用于更多成员(More expression-bodied members) 表达式抛
阅读全文
AppDomain
摘要:AppDomain 在目前的项目开发中,分布式开发已经逐渐成为主流。一个项目要是没有采用分布式架构,都不好意思跟别人说这是一个完整的项目。这句话虽然有些过激,但是随着人们对效率的要求在提高,以及产品需要提升用户体验。只有在软件项目的效率和体验做到高质量,才可以赢得用户和市场。 对于.NET项目,我们
阅读全文