2017年11月8日

设计项目考虑因素

摘要: 1、解决按钮多次提交2、关键表入库判断OpenID、用户角色、是否存在记录、访问来源3、主要业务考虑事务、并发容易出问题(典型奖品多出问题)4、状态验证:不管是发钱还是券,一定要依赖本地的数据状态做判断(比如不能依赖任何第三方接口)5、用户标识cookie加密:比如微信openid一定要加密处理,提 阅读全文

posted @ 2017-11-08 15:30 D-Z-K 阅读(383) 评论(0) 推荐(0) 编辑

JS定义类或函数

摘要: 1、工厂模式<script> function createCar(){ var oCar = new Object(); oCar.color="red"; oCar.doors=4; oCar.showColor=function(){ alert(this.color); } return o 阅读全文

posted @ 2017-11-08 11:34 D-Z-K 阅读(323) 评论(0) 推荐(0) 编辑

JS继承几种方式

摘要: 1、原型继承<script> function Person(name,age){ this.name = name; this.age = age; } Person.prototype.sayHello = function(){ alert("使用原型得到Name:"+this.name); 阅读全文

posted @ 2017-11-08 11:32 D-Z-K 阅读(111) 评论(0) 推荐(0) 编辑

JS作用域与闭包

摘要: 阅读全文

posted @ 2017-11-08 11:25 D-Z-K 阅读(108) 评论(0) 推荐(0) 编辑

优化程序小技巧

摘要: 基本代码技巧拼装字符串 拼装好之后再删除是很低效的写法。有些方法其循环长度在大部分情况下为1,这种写法的低效就更为明显了: 虽然每次都是写出这样的代码,但我总觉得for循环中的<判断有点多余,比如数组中有100个元素,我们明明知道前99个是不会数组越界的,根本不需要判断i<n的,但我们却多判断了99 阅读全文

posted @ 2017-11-08 10:59 D-Z-K 阅读(207) 评论(0) 推荐(0) 编辑

jquery的extend和fn.extend

摘要: jQuery为开发插件提拱了两个方法,分别是: jQuery.fn.extend(object);jQuery.extend(object); jQuery.extend(object); 为扩展jQuery类本身.为类添加新的方法。jQuery.fn.extend(object);给jQuery对 阅读全文

posted @ 2017-11-08 10:47 D-Z-K 阅读(125) 评论(0) 推荐(0) 编辑

Web站点转为MVC站点

摘要: 阅读全文

posted @ 2017-11-08 10:46 D-Z-K 阅读(139) 评论(0) 推荐(0) 编辑

Git和Svn区别

摘要: SVN更适用于项目管理, Git仅适用于代码管理。1、 最核心的区别Git是分布式的,而Svn不是分布的,Git更倾向于分布式开发, 因为每一个开发人员的电脑上都有一个Local Repository,所以即使没有网络也一样可以Commit, 查看历史版本记录,创建项 目分支等操作,等网络再次连接上 阅读全文

posted @ 2017-11-08 10:46 D-Z-K 阅读(125) 评论(0) 推荐(0) 编辑

区分JS的空值

摘要: 区分JS中的undefined,null,"",0和false 在程序语言中定义的各种各样的数据类型中,我们都会为其定义一个"空值"或"假值",比如对象类型的空值null,.NET Framework中数据库字段的空值DBNull,boolean类型的假值false等等。在JavaScript中也有 阅读全文

posted @ 2017-11-08 10:44 D-Z-K 阅读(335) 评论(0) 推荐(0) 编辑

死锁

摘要: 死锁: 是指两个或两个以上的进程在执行过程中,由于竞争资源或者由于彼此通信而造成的一种阻塞的现象,若无外力作用,它们都将无法推进下去 死锁产生的原因及四个必要条件产生死锁的原因主要是:(1) 因为系统资源不足。(2) 进程运行推进的顺序不合适。(3) 资源分配不当等。如果系统资源充足,进程的资源请求 阅读全文

posted @ 2017-11-08 10:43 D-Z-K 阅读(93) 评论(0) 推荐(0) 编辑

高效的SQLSERVER分页方案

摘要: Sqlserver数据库分页查询一直是Sqlserver的短板,假设有表ARTICLE,字段ID、YEAR,数据53210条(客户真实数据,量不大),分页查询每页30条,查询第1500页(即第45001-45030条数据),字段ID聚集索引,YEAR无索引,Sqlserver版本:2008R2 第一 阅读全文

posted @ 2017-11-08 10:30 D-Z-K 阅读(208) 评论(0) 推荐(0) 编辑

IIS经典模式VS集成模式

摘要: IIS5 到 IIS6 的改进,主要是 HTTP.sys 的改进。IIS6 到 IIS7 的改进,主要是 ISAPI 的改进。 IIS7.0和6.0的处理过程的主要区别在于asp.net如何与IIS服务器实现集成,在IIS6.0中有两个请求处理管道,其中一个管道式本地代码ISAPI FILTERS 阅读全文

posted @ 2017-11-08 10:29 D-Z-K 阅读(282) 评论(0) 推荐(0) 编辑

MVC过滤器

摘要: MVC支持的过滤器类型有四种,分别是:Authorization(授权),Action(行为),Result(结果)和Exception(异常)。如下表, 但是默认实现它们的过滤器只有三种,分别是Authorize(授权),ActionFilter,HandleError(错误处理);各种信息如下表 阅读全文

posted @ 2017-11-08 10:21 D-Z-K 阅读(156) 评论(0) 推荐(0) 编辑

Request接收参数乱码原理解析

摘要: Request.QueryString[key]、Request.Form[key]默认都会调用函数HttpUtility.UrlDecode(str, encoding),如果HTTP请求的数据只经过一次编码,无需再调用解码函数;Request.Cookies[key]没用调用解码函数,获取到值后 阅读全文

posted @ 2017-11-08 10:19 D-Z-K 阅读(202) 评论(0) 推荐(0) 编辑

int三种转化区别

摘要: Convert.ToInt32、(int)和int.Parse三者的区别: 前者适合将object类类型转换成int类型,如Convert.ToInt32(session["shuzi"]); (int)适合简单数据类型之间的转换; int.Parse适合将string类类型转换成int类型,如in 阅读全文

posted @ 2017-11-08 10:18 D-Z-K 阅读(1968) 评论(0) 推荐(0) 编辑

Area使用

摘要: Controller的歧义问题试想一下,如果我们现在在根目录的 Controller 文件夹中也添加一个名为 Home 的 Controller,然后我们通过把URL定位到 /Home/Index,路由系统能匹配到根目录下的 Controller 吗? 在根目录的 Controllers 文件夹中添 阅读全文

posted @ 2017-11-08 10:14 D-Z-K 阅读(433) 评论(0) 推荐(0) 编辑

frame和iframe区别

摘要: 阅读全文

posted @ 2017-11-08 10:13 D-Z-K 阅读(124) 评论(0) 推荐(0) 编辑

Action和Partial等区别

摘要: @Html.Action:需要有对应的Action,并且Action方法有返回值。(注:处理完业务逻辑同时,也需要返回所需值)@{Html.RenderAction}:需要有对应的Action,Action方法没有返回值。(注:只处理业务逻辑,不需要返回值) @Html.Partial: 不需要有A 阅读全文

posted @ 2017-11-08 10:12 D-Z-K 阅读(119) 评论(0) 推荐(0) 编辑

Log4Net

摘要: • Log4Net是用来记录日志的,可以将程序运行过程中的信息输出到一些地方(文件、数据库、EventLog等),日志就是程序的黑匣子,可以通过日志查看系统的运行过程,从而发现系统的问题。日志的作用:将运行过程的步骤、成功失败记录下来,将关键性的数据记录下来分析系统问题所在。• 配置Log4Net环 阅读全文

posted @ 2017-11-08 09:57 D-Z-K 阅读(103) 评论(0) 推荐(0) 编辑

2017年11月7日

ASP.NET运行机制

摘要: 刚开始与服务器通过3次握手建立连接后将用户动作封装成http请求的报文,然后通过Socket客户端发送到后台服务器的内核模块中的HTTP.SYS(),然后将请求分发给用户模式中的IIS,IIS中的w3svc服务(svchost.exe)拿到请求后,如果是静态文件(html,css,js....),直 阅读全文

posted @ 2017-11-07 17:32 D-Z-K 阅读(117) 评论(0) 推荐(0) 编辑

页面生命周期`

摘要: 1、创建页面控件树(FrameworkInitialize()——>BuildControlTree(this)): 将所有的控件实例化(即new),然后把层级(父子body里面有form,form里面有panel, panel里面有button)关系设置好,从Page类开始先创建声明、 创建头部、 阅读全文

posted @ 2017-11-07 17:23 D-Z-K 阅读(85) 评论(0) 推荐(0) 编辑

Reflector页面生命周期

摘要: 阅读全文

posted @ 2017-11-07 17:23 D-Z-K 阅读(79) 评论(0) 推荐(0) 编辑

页面传值方式

摘要: 1、QueryString url传值?key=value适应场景:页面跟页面自己传值.页面之间传值缺点:稍徽不安全(地址栏可以看到内容).长度限制 2、Post:Request["key"]适用场景:页面跟页面自己传值,页面之间传值。缺点:稍微安全(用HttpWatch监控http请求也可以看到内 阅读全文

posted @ 2017-11-07 17:21 D-Z-K 阅读(181) 评论(0) 推荐(0) 编辑

重载与重写

摘要: 构成方法重载的条件:1、在同一类中2、具有相同的方法名3、具有不同的参数个数与参数类型4、与返回值无关重载是面向过程的概念 构成方法重写的条件:1、必须存在继承2、子类与父类参数必须一致包括参数个数,参数类型,返回值,方法名称相同3、子类重写父类方法,访问修饰符最后保持一致,也可子类的访问修饰符比父 阅读全文

posted @ 2017-11-07 17:19 D-Z-K 阅读(105) 评论(0) 推荐(0) 编辑

访问修饰符

摘要: private:私有成员,在类的内部才可访问 protected:保护成员,在类内部和继承类中可访问 internal:当前程序集内部可以访问 protected internal:当前程序集或子类中(不同程序集也可以访问) public:公共成员,完全公开,没有访问限制 类中的成员,如果不加访问修 阅读全文

posted @ 2017-11-07 17:18 D-Z-K 阅读(94) 评论(0) 推荐(0) 编辑

进程与线程

摘要: 进程是操作系统资源分配的单位线程是操作系统执行的单位线程(Thread)与进程(Process)二者都定义了某种边界,不同的是进程定义的是应用程序与应用程序之间的边界,不同的进程之间不能共享代码和数据空间,而线程定义的是代码执行堆栈和执行上下文的边界。一个进程可以包括若干个线程;它们共享进程的资源; 阅读全文

posted @ 2017-11-07 17:18 D-Z-K 阅读(84) 评论(0) 推荐(0) 编辑

虚方法和抽象方法

摘要: 虚方法virtual,抽象方法abstract 虚方法要有方法体,抽象方法,不允许由方法体 虚方法可以被子类override,抽象方法必须被子列override 虚方法除了密封类都可以写,抽象方法只能在抽象类中 相同点:都可以被子类重写 什么时候用抽象方法,什么时候用虚方法: 父类本身需要被实例化, 阅读全文

posted @ 2017-11-07 17:17 D-Z-K 阅读(195) 评论(0) 推荐(0) 编辑

类、结构、抽象类、接口区别

摘要: 类与结构不同:1、类是引用类型,分配在内存的堆上,结构是值类型,分配在内存的栈上2、类可以被继承,结构不能被继承3、类可以有默认的构造函数,结构不可以有默认构造函数4、类可以添加无参的构造函数,结构必须带参5、类中可以给字段赋值,引用传递,结构中给字段赋值是错误的,复制传递,Int32,boolea 阅读全文

posted @ 2017-11-07 17:15 D-Z-K 阅读(436) 评论(0) 推荐(0) 编辑

栈与堆

摘要: 栈是编译期间就分配好的内存空间,因此代码中必须就栈的大小有明确的定义;局部值类型变量、值类型参数等都在栈内存中堆是程序运行期间动态分配的内存空间,可以根据程序的运行情况确定要分配的堆内存的大小 #region a->b->c->d 输出 d,c,b,a string[] names = new st 阅读全文

posted @ 2017-11-07 17:13 D-Z-K 阅读(130) 评论(0) 推荐(0) 编辑

手写AJAX

摘要: 阅读全文

posted @ 2017-11-07 17:11 D-Z-K 阅读(90) 评论(0) 推荐(0) 编辑

手写SQLHelper

摘要: 阅读全文

posted @ 2017-11-07 17:11 D-Z-K 阅读(83) 评论(0) 推荐(0) 编辑

Database-First,Model-First,Code-first

摘要: 1.Database First是基于已存在的数据库,利用某些工具(如Vs提供的EF设计器)创建实体类,数据库对象与实体类的匹配关系等,你也可以手动修改这些自动生成的代码及匹配文件。 2.Model First 这种方式是先利用某些工具(如VS的EF设计器)设计出实体数据模型及他们之间的关系,然后再 阅读全文

posted @ 2017-11-07 16:20 D-Z-K 阅读(418) 评论(0) 推荐(0) 编辑

基本项目框架搭建

摘要: 阅读全文

posted @ 2017-11-07 16:16 D-Z-K 阅读(147) 评论(0) 推荐(0) 编辑

Memcached、Redis、MongoDB

摘要: Memcached:Memcache就是一个普通的程序,这个程序进程先申请一个内存,预先将可支配的内存空间进行分区,每个分区里再分成多个块最大1M,但同一个分区里,块的长度是固定的,当数据来的时候通过SocketSocket有一个监听的端口,往端口发送一个字符串过来,解析字符串如果是插入操作,就将数 阅读全文

posted @ 2017-11-07 16:14 D-Z-K 阅读(157) 评论(0) 推荐(0) 编辑

Memcached

摘要: 1、memcached能接受的key的最大长度是多少? (250字符)key的最大长度是250个字符。需要注意的是,250是memcached服务器端内部的限制,如果您使用的客户端支持"key的前缀"或类似特性,那么key(前缀+原始key)的最大长度是可以超过250个字符的。我们推荐使用使用较短的 阅读全文

posted @ 2017-11-07 16:09 D-Z-K 阅读(256) 评论(0) 推荐(0) 编辑

强类型与弱类型

摘要: 什么是强类型,什么是弱类型,哪种更好些?为什么?强类型是在编译的时候就确定类型的数据,在执行时类型不能更改弱类型是在执行的时候才会确定类型没有好不好,二者各有好处强类型安全,因为它事先已经确定好了,而且效率高,一般用于编译型编程语言,如C++,Java,C#等 弱类型相比而言不安全,在运行的时候容易 阅读全文

posted @ 2017-11-07 15:04 D-Z-K 阅读(154) 评论(0) 推荐(0) 编辑

属性和索引器

摘要: 阅读全文

posted @ 2017-11-07 15:03 D-Z-K 阅读(84) 评论(0) 推荐(0) 编辑

委托、反射、事件

摘要: 委托:简单的说,委托是一种方法容器,也可以理解为指向一个函数的指针,它可以把一个方法作为参数带入另一个方法 委托本质是一个密封类事件是委托对象的封装事件的本质:event会自动生成一个private delegate变量和两个函数: add和remove 反射:反射提供了封装程序集、模块和类型对象, 阅读全文

posted @ 2017-11-07 15:02 D-Z-K 阅读(300) 评论(0) 推荐(0) 编辑

值类型与引用类型区别

摘要: 1、将一个值类型变量赋给另一个值类型变量时,将复制包含的值。引用类型变量的赋值只复制对对象的引用,而不复制对象本身2、值类型不可能派生出新的类型:所有的值类型均隐式派生自System.ValueType。但与引用类型相同的是,结构也可以实现接口3、值类型不可能包含null值:然而,可空类型功能允许将 阅读全文

posted @ 2017-11-07 15:01 D-Z-K 阅读(147) 评论(0) 推荐(0) 编辑

Server.Transfer与Response.Redirect

摘要: a、Server.Transfer:地址栏不改变、Response.Redirect:地址栏的改变 b、Server.Transfer:这种方法的重定向请求是在服务器内部进行的,不能重定向到外部网站,浏览 器不知道页面己经发生了一次跳转,因为是内部重定向,所以在被重定向到的页面中是可以访问到Requ 阅读全文

posted @ 2017-11-07 15:00 D-Z-K 阅读(103) 评论(0) 推荐(0) 编辑

导航