03 2020 档案
摘要:在C#2.0的时候微软推出了泛型,可以说泛型在.net体系框架中应用到方方面面。首先举一个小例子说一下泛型.比如一个方法,我们既可以传string,又可以传int,还可以传DateTime,在.net framework 1.0时代是这样处理: /// <summary> /// 1.0的写法 //
阅读全文
摘要:前言:Serilog是.NET应用程序的诊断日志记录库。它易于设置,具有简洁的API,并且可以在所有最新的.NET平台上运行。尽管即使在最简单的应用程序中它也很有用,但当对复杂的,分布式的和异步的应用程序和系统进行检测时,Serilog对结构化日志记录的支持便会更加出色。 首先导入要用到的NuGet
阅读全文
摘要:在go语言中,不同类型的变量之间赋值需要显示转换。 语法:T t=T(e) var i int=1 //将i转换为float类型 var j float32=float32(i) 基本数据类型转string 方法1:fmt.Sprintf("%参数",表达式) func Sprintf(forat
阅读全文
摘要:加密key与解密key不是一个,而是一对 加密key与解密key是不能互相推导的,有密文,没有解密key也推导不出来原文 加密解密速度慢,但是安全性好 特点: 公开解密key,保证数据的安全传递 公开机密key,保证数据的不可抵赖 code: /// <summary> /// 获取非对称的这对密钥
阅读全文
摘要:加密后能解密回原文,但是需要一个key 加密key与解密key是一样的(对称) 但是key的安全性问题一定要得到保证 code: //key可以写在配置文件中 //加密key static string key = "A1B2C3D4E5"; private static byte[] _rgbKe
阅读全文
摘要:MD5公开的算法,任何语言实现后都一样,通用的; 不可逆加密:原文--加密--密文,密文无法解密出原文; 相同原文加密的结果是一样的; 不同长度的内容加密后都是32位; 不管文件多大,都能产生32位长度摘要; 用途: 1.防篡改(比对密文,判断是否修改过 例如:git) 2.密码保存,防止看到明文(
阅读全文
摘要:之前做过一个业务,就是发送邮件。 这里算是做一下回顾吧,今天再写一次。 可用于的业务场景: 1.提醒消息,例如会员到期、降价通知; 2.验证登录,发送code; ... ... 首先要拿到我们的客户端授权码 QQ:先进入QQ邮箱,点击设置 tab栏选择账户 往下滑 开启SMTP服务 然后发送短信到指
阅读全文
摘要:单例模式解读: 在应用程序中,保证类型只有一个实例,只允许实例化一次; 步骤: 首先构造函数私有化,以保证对象不会被它人实例化; 提供一个公开的静态方法供他人获取对象的实例; 防止并发情况破坏单例,在创建对象时加锁 第一种方法: /// <summary> /// 懒汉式单例写法:只有在调用Crea
阅读全文
摘要:.Net Core中有各种Filter,分别是AuthorizationFilter、ResourceFilter、ExceptionFilter、ActionFilter、ResultFilter。可以把他们看作是.Net Core自带的AOP的扩展封装。 今天来看其中的一种:ExceptionF
阅读全文