摘要: ASP .NET Identity ASP .NET Identity是微软所贡献的开源项目,用来提供ASP.NET的验证、授权等等机制。在ASP .NET Identity里除了提供最基础的:用户注册、密码重设、密码验证等等基础功能之外,也提供了进阶的:Cookie登入、Facebook登入、Go 阅读全文
posted @ 2019-01-29 13:38 Pen丶 阅读(1056) 评论(0) 推荐(0) 编辑
摘要: 在定义好了对象的类型后,通过NewtonJson我们可以方便的对一个对象进行序列化和反序列化。 在对象里面的属性不好定义,或者不好确定的情况下,我们也可以直接把我们要反序列化的对象当做Objcet处理,但是这样后续的操作就十分的不变,比如你要使用对象里面的某个属性的时候 通过JObject和JArr 阅读全文
posted @ 2019-01-25 10:10 Pen丶 阅读(1376) 评论(0) 推荐(0) 编辑
摘要: 前言 在js里面我们想要给一个对象的属性赋值,或者调用一个对象里面的方法,一般是: 如果是在 .net中,不使用动态对象的话,就只有先定义好我们的属性和方法,再直接去调用,有了动态对象后,我们也可以做类似的事情 概述 1. dynamic是FrameWork4.0的新特性。dynamic的出现让C 阅读全文
posted @ 2019-01-25 10:08 Pen丶 阅读(1228) 评论(0) 推荐(0) 编辑
摘要: 先上一段代码 1. 主线程中打印1,调用方法Test() 返回一个Task 2. 主线程执行Test中方法 打印2,通过await 关键字等待GetName()方法执行完成 3. 主线程执行GetName中的方法 打印3,之后主线程开启新的线程执行业务逻辑 4. Main 方法中休眠1秒后打印4(因 阅读全文
posted @ 2019-01-25 10:05 Pen丶 阅读(2394) 评论(0) 推荐(0) 编辑
摘要: 在了解Task用法之前就不得不先对线程有一定的了解 线程的创建 线程的创建是比较占用资源,所以有了线程池,new 一个Thread 不会通过线程池(当然也可以使用ThreadPool),Task默认直接使用线程池 传入参数 返回值 Thead是不能返回值的,但是作为更高级的Task当然要弥补一下这个 阅读全文
posted @ 2019-01-25 10:04 Pen丶 阅读(3623) 评论(0) 推荐(1) 编辑
摘要: 在项目过程中需要使用到日志记录的时候之前使用的是log4net,在使用的过程中配置文件感觉有点冗余,由于没有深入,生成的error日志老是会出现在debug日志中,同时要删除日志文件的时候总是需要把站点或程序停止后才能删除,所以就想找下有没有简单点的日志框架,也就是下面介绍的Nlog 配置灵活,简单 阅读全文
posted @ 2019-01-25 09:54 Pen丶 阅读(626) 评论(0) 推荐(0) 编辑
摘要: 1、InstancePerDependency 对每一个依赖或每一次调用创建一个新的唯一的实例。这也是默认的创建实例的方式。 2、InstancePerLifetimeScope 在一个生命周期域中,每一个依赖或调用创建一个单一的共享的实例,且每一个不同的生命周期域,实例是唯一的,不共享的。 3、I 阅读全文
posted @ 2019-01-25 09:34 Pen丶 阅读(308) 评论(0) 推荐(0) 编辑
摘要: Autofac 概述 附上参考地址(http://autofac.readthedocs.io/en/latest/getting started/index.html) 通过上文明白了什么是IOC,下面就大概具体的了解一下实现IOC的一个容器Autofac,先看代码: 从上面的代码可以发现,我们在 阅读全文
posted @ 2019-01-25 09:33 Pen丶 阅读(237) 评论(0) 推荐(0) 编辑
摘要: 一、引言 IOC(控制反转),就是一种程序的设计思想,先了解几个基本的概念 依赖:就是一个类依赖于另一个类 依赖倒置原则:高层模块不应该依赖于低层模板,而是依赖于低层的抽象,两者应该依赖于抽象 IOC(控制反转):把高层对低层的依赖交个第三方,可以是IOC容器,也可以是工厂,要什么对象给什么对象(比 阅读全文
posted @ 2019-01-25 09:31 Pen丶 阅读(145) 评论(0) 推荐(1) 编辑
摘要: 之前在一个临时迁移数据的项目中需要使用到EF针对Mysql的批量操作,因为该项目具备以下条件: 1. 是临时性的,数据掐迁移完成后就不再使用, 2. 同时有一定的效率要求 3. 项目中的实体在其他项目中都是基于EF的,已经写好了Model 考虑到尽可能的减少工作量,最快捷的方式是找到一个支持EF批量 阅读全文
posted @ 2019-01-24 18:09 Pen丶 阅读(631) 评论(0) 推荐(0) 编辑