随笔分类 -  C#

摘要:开发过文件存储那块业务的小伙伴或多或少都应该了解过诸如:FastDFS、Minio、MongDb GridFS,通过这些第三方组件可以应用于我们的文件存储系统。之前有用过Minio,性能很高而且部署起来非常简单,有兴趣的同学可以尝试一下。😉同样,在.Net Core中我们一样可以处理静态文件的读取 阅读全文
posted @ 2021-01-25 18:26 江北、 阅读(796) 评论(6) 推荐(5) 编辑
摘要:基于内存的单线程数据库,使Redis的线程安全性与性能极高。而Redis的双向链表数据类型(List)天生就可作为消息队列存储消息. 在这里就不说消息队列的等等一些优点。但是补充一下Redis的List类型的几个命令,你可以指定将一个元素投送到列表的头部(左边)或者尾部(右边),当然也可以指定从列表 阅读全文
posted @ 2020-10-02 14:53 江北、 阅读(2804) 评论(0) 推荐(2) 编辑
摘要:我目前每天主要工作以开发api为主,这都离不开接口文档。如果远程对接的话前端总说Swagger不清晰,只能重新找一下新的接口文档。ShowDoc就是一个不错的选择,简洁、大方、灵活部署。 但是话说回来,既然是文档每个接口你都得写。总感觉这样效率太慢了,能不能自己生成一下,自己只要Ctrl+C、Ctr 阅读全文
posted @ 2020-07-13 18:22 江北、 阅读(741) 评论(0) 推荐(7) 编辑
摘要:集合(Collection)类是专门用于数据存储和检索的类。这些类提供了对栈(stack)、队列(queue)、列表(list)和哈希表(hash table)的支持。大多数集合类实现了相同的接口。 平常在工作中List<T>集合是用的最多的,其次是Array(数组).今天整理一下各类形式的集合,不 阅读全文
posted @ 2020-07-12 17:04 江北、 阅读(2159) 评论(1) 推荐(14) 编辑
摘要:软件设计模式(Design pattern),又称设计模式,是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性、程序的重用性。 设计模式的六大原则:面向对象语言开发过程中,推荐的一些指导性原则;没有明确的招数,而且 阅读全文
posted @ 2020-07-04 17:51 江北、 阅读(222) 评论(0) 推荐(0) 编辑
摘要:一些常用的ORM大家都应该知道,像微软的EF、国内的SqlSugar等...... 其实他们的底层也都是基于ado.net,只不过在ado.net上加以封装。一般大公司都有自己的一套ORM,可以说这个东西咱不能不学,必须得造造轮子。😀 传统的ado.net查询数据,如下:根据id查询数据 publ 阅读全文
posted @ 2020-07-04 16:09 江北、 阅读(361) 评论(0) 推荐(1) 编辑
摘要:解读:首先特性是一个类,它继承于Attribute。它对程序中的元素进行标注,如类型、字段、方法和属性等。 Attribute是程序代码的一部分,它不会被编译器丢弃,而且还会被编译器编译进程序集(Assembly)的元数据(Metadata)里。 新建一个CustomAttribute的类: pub 阅读全文
posted @ 2020-06-27 18:01 江北、 阅读(2005) 评论(0) 推荐(3) 编辑
摘要:时代在变,技术也在更新迭代。从传统的单体应用架构到现在的分布式集群架构,在技术的学习上真的是一点都不能松懈。 网上关于微服务与Consul的话题太多了,我在这里不做过多描述。 其实就是在微服务中我们可以利用Consul可以实现服务的发现、治理、健康检查等... 用它先下载它: https://www 阅读全文
posted @ 2020-06-25 19:19 江北、 阅读(2165) 评论(2) 推荐(3) 编辑
摘要:说起RabbitMQ大家第一时间应该想到的就是异步队列,关于异步队列的话题简直太多了,各位同学在园子里一搜便知。我第一次听异步队列这个名词感觉非常高大上😀,想到这项技术必须要学。但是学习的任何一门技术没经过项目的洗礼,都似乎少了点什么。嗯。是的。只有在企业级开发中,才能找到自己的遗漏的知识点。所以 阅读全文
posted @ 2020-06-18 17:40 江北、 阅读(382) 评论(1) 推荐(2) 编辑
摘要:首先反射是基于System.Reflection命名空间下,.Net框架提供的帮助类库,可以读取并使用metadata(元数据:描述对象信息的数据). 我们再来看下代码生成编译的总过程。 编译器编译(一次编译):类库生成的都是dll,控制台生成的是exe文件 dll和exe都包含两大块metadat 阅读全文
posted @ 2020-06-07 20:15 江北、 阅读(513) 评论(0) 推荐(1) 编辑
摘要:C# 中的委托(Delegate)类似于 C 或 C++ 中函数的指针。委托(Delegate) 是存有对某个方法的引用的一种引用类型变量。引用可在运行时被改变。 委托(Delegate)特别用于实现事件和回调方法。所有的委托(Delegate)都派生自 System.Delegate 类。 委托的 阅读全文
posted @ 2020-05-30 17:59 江北、 阅读(248) 评论(0) 推荐(1) 编辑
摘要:在C#2.0的时候微软推出了泛型,可以说泛型在.net体系框架中应用到方方面面。首先举一个小例子说一下泛型.比如一个方法,我们既可以传string,又可以传int,还可以传DateTime,在.net framework 1.0时代是这样处理: /// <summary> /// 1.0的写法 // 阅读全文
posted @ 2020-03-18 17:34 江北、 阅读(1439) 评论(0) 推荐(0) 编辑
摘要:加密key与解密key不是一个,而是一对 加密key与解密key是不能互相推导的,有密文,没有解密key也推导不出来原文 加密解密速度慢,但是安全性好 特点: 公开解密key,保证数据的安全传递 公开机密key,保证数据的不可抵赖 code: /// <summary> /// 获取非对称的这对密钥 阅读全文
posted @ 2020-03-06 17:53 江北、 阅读(536) 评论(0) 推荐(0) 编辑
摘要:加密后能解密回原文,但是需要一个key 加密key与解密key是一样的(对称) 但是key的安全性问题一定要得到保证 code: //key可以写在配置文件中 //加密key static string key = "A1B2C3D4E5"; private static byte[] _rgbKe 阅读全文
posted @ 2020-03-06 16:57 江北、 阅读(327) 评论(0) 推荐(0) 编辑
摘要:MD5公开的算法,任何语言实现后都一样,通用的; 不可逆加密:原文--加密--密文,密文无法解密出原文; 相同原文加密的结果是一样的; 不同长度的内容加密后都是32位; 不管文件多大,都能产生32位长度摘要; 用途: 1.防篡改(比对密文,判断是否修改过 例如:git) 2.密码保存,防止看到明文( 阅读全文
posted @ 2020-03-06 15:09 江北、 阅读(823) 评论(0) 推荐(0) 编辑
摘要:前言:在实际开发过程中经常都要和Json打交道,序列化与反序列化就成了开发中必不可缺的技能。 首先要添加引用NuGet包,Newtonsoft.Json,通过此工具可对Json对象进行序列化与反序列化。当然还可通过其它方式,这里的话只介绍这一种方法。 1.反序列化Json字符串 string str 阅读全文
posted @ 2019-08-03 10:17 江北、 阅读(1067) 评论(0) 推荐(1) 编辑
摘要:1.先下载NuGet包(ZXing.Net) 2.新建控制器及编写后台代码 3.前端 4.效果: 阅读全文
posted @ 2019-07-30 18:42 江北、 阅读(4564) 评论(0) 推荐(2) 编辑
摘要:1.新建MVC项目,新建控制器、视图 添加控制器: 添加视图(将使用布局页前面的复选框里的勾勾去掉) 2.在Models里新建一个类 public class Shop { /// <summary> /// 编号 /// </summary> public int Number { get; se 阅读全文
posted @ 2019-06-23 20:16 江北、 阅读(2012) 评论(0) 推荐(2) 编辑
摘要:1.引用easyui样式及脚本文件 2.数据库创建表(自联表)及数据建模(Code First) 数据建模:Models =》添加=》新建项=》左侧选择Date=》ADO.NET 实体数据模型=》添加=》来自数据库的Code First=》选择对应数据库及要建模的表 3.前端js和h5代码 4.新建 阅读全文
posted @ 2019-05-02 22:37 江北、 阅读(1001) 评论(0) 推荐(1) 编辑

点击右上角即可分享
微信分享提示
more_horiz
keyboard_arrow_up light_mode palette
选择主题