- 博客(62)
- 资源 (55)
- 收藏
- 关注
转载 字节流与字符流的区别详解
字节流与字符流先来看一下流的概念:在程序中所有的数据都是以流的方式进行传输或保存的,程序需要数据的时候要使用输入流读取数据,而当程序需要将一些数据保存起来的时候,就要使用输出流完成。程序中的输入输出都是以流的形式保存的,流中保存的实际上全都是字节文件。字节流与字符流在java.io包中操作文件内容的主要有两大类:字节流、字符流,两类都分为输入和输出操作。在字
2015-07-31 16:15:56 334
原创 增加计算列排序
Q、.net如何增加对计算列的排序?A、两种方法:第一种、数据库中先处理好计算列select (USDDeposit - USDWithdraw) as 'NetDeposit'from TableAorder by (USDDeposit - USDWithdraw) asc // 数据库中排序System.Data.DataView dv = d
2015-07-30 10:45:15 424
转载 VS2010项目引用了DLL文件,也写了Using,但是编译时提示:未能找到类型或命名空间名称
昨天写了一个很小的winform程序,其中引用了自己写的两个dll文件。本来认为轻松搞定,结果一编译居然提示:未能找到类型或命名空间名称。。。。。于是删掉两个dll重新引用,再编译结果依旧!很是郁闷。后来经过调查,终于发现了解决方法:在项目上点右键-->属性-->应用程序-->目标框架-->修改为.NET Framework 4。而我原来的设置是.NET F
2015-07-29 21:26:19 3030
原创 sqlserver用当前行减去前一行的数据的简单处理方法 -- 不使用循环
;with cet-- 1.递归取出需要的数据as ( -- 对于CET通用表达式增加自定义列的问题?-- 附带说明-- 自定义列必须满足下面二者中的一种,否则报错:[在递归查询 "cet" 的列 "CommType" 中,定位点类型和递归部分的类型不匹配。]-- a.自定义列CommType显示转换-- b.或者在使用自定义列时,前面列的长度必须比后面列的长度大s
2015-07-28 10:33:04 7316
转载 ASP.NET MVC的Razor引擎二:RazorView、RazorViewEngine
Razor引擎具有两个核心的类型,一个是表示View本身的类型RazorView,另一个则是获取和创建它的RazorViewEngine,我们将用两篇文章对它们分别进行剖析。Razor引擎下的View通过类型RazorView表示,它与表示Web Form引擎View的类型WebFormView都是BuildManagerCompiledView的子类。[本文已经同步到《How ASP.N
2015-07-27 11:05:41 1319
转载 ASP.NET MVC的Razor引擎一:View编译原理
通过.cshtml或者.vbhtml文件定义的View能够被执行,必须先被编译成存在于某个程序集的类型,ASP.NET MVC采用动态编译的方式对View文件实施编译。当我们在对ASP.NET MVC进行部署的时候,需要对.cshtml或者.vbhtml文件进行打包。针对某个View的第一次访问会触发针对它的编译,一个View对应着一个类型。我们可以对.cshtml或者.vbhtml进行修改,Vi
2015-07-27 11:00:52 989
转载 ASP.NET MVC的View是如何被呈现出来的?
在前面的四篇文章中,我们介绍了各种ActionResult以及相关的请求响应机制,但是与“View的呈现”相关的ActionResult是ViewResult。通过ViewResult的执行实现的对View的呈现比上面我们介绍的各种ActionResult要复杂得多,ASP.NET MVC内部设计了一个扩展的View引擎实现了最终的View呈现工作。[本文已经同步到《How ASP.NET M
2015-07-24 16:27:02 407
转载 ASP.NET MVC的5种AuthorizationFilter
在总体介绍了筛选器及其提供机制(《深入探讨ASP.NET MVC的筛选器》)之后,我们按照执行的先后顺序对四种不同的筛选器进行单独介绍,首先来介绍最先执行的AuthorizationFilter。从命名来看,AuthorizationFilter用于完成授权相关的工作,所以它应该在Action方法被调用之前执行才能起到授权的作用。不仅限于授权,如果我们希望目标Action方法被调用之前中断执行
2015-07-24 16:22:31 624
转载 ASP.NET MVC涉及到的5个同步与异步二
Action方法的执行具有两种基本的形式,即同步执行和异步执行,而在ASP.NETMVC的整个体系中涉及到很多同步/异步的执行方式,虽然在前面相应的文章中已经对此作了相应的介绍,为了让读者对此有一个整体的了解,我们来做一个总结性的论述。[本文已经同步到《How ASP.NET MVC Works?》中]目录 一、MvcHandler的同步于异步 二、Controller的同步与
2015-07-24 16:09:53 1340
转载 异步Action的定义和执行原理一
Visual Studio提供的Controller创建向导默认为我们创建一个继承自抽象类Controller的Controller类型,这样的Controller只能定义同步Action方法。如果我们需要定义异步Action方法,必须继承抽象类AsyncController。这篇问你讲述两种不同的异步Action的定义方法和底层执行原理。[本文已经同步到《How ASP.NET MVC Wo
2015-07-24 16:07:33 1111
转载 Model绑定机制3:集合+字典
在本系列的前面两篇文章(《简单类型+复杂类型》、《数组》)我们通过创建的实例程序模拟了ASP.NET MVC默认使用的DefaultModelBinder对简单类型、复杂类型以及数组对象的Model绑定。现在我们按照相同的方式来分析基于集合和字典类型的Model绑定是如何实现的。[源代码从这里下载][本文已经同步到《How ASP.NET MVC Works?》中]一、集合
2015-07-24 16:05:08 461
转载 Model绑定机制2:数组
[续《通过实例模拟ASP.NET MVC的Model绑定机制:简单类型+复杂类型]》]基于数组和集合类型的Model绑定机制比较类似,对于绑定参数类型或者参数类型的某个属性为数组或者集合,如果ValueProvider根据对应的Key能够匹配多条数据,那么这些数据最终将会转换为绑定的数组/集合的元素。此外,针对数组/集合的Model绑定还支持基于索引的方式。[源代码从这里下载][本文已经同步到《H
2015-07-24 16:04:18 434
转载 Model绑定机制1:简单类型+复杂类型
总的来说,针对目标Action方法参数的Model绑定完全由组件ModelBinder来实现,在默认情况下使用的ModelBinder类型为DefaultModelBinder,接下来我们将按照逐层深入的方式介绍实现在DefaultModelBinder的默认Model绑定机制。[源代码从这里下载][本文已经同步到《How ASP.NET MVC Works?》中]目录 一、简单类
2015-07-24 16:03:38 960
转载 以ValueProvider为核心的值提供系统3: ValueProviderFactory
在ASP.NET Model绑定系统中,用于提供数据值的ValueProvider对象通过ValueProviderFactory来创建。在ASP.NET MVC应用编程接口中,ValueProviderFactory继承自ValueProviderFactory类。本篇文章只要介绍基于ValueProviderFactory的ValueProvider的提供机制,以及如何通过自定义ValuePr
2015-07-24 16:01:34 537
转载 以ValueProvider为核心的值提供系统2: DictionaryValueProvider
NameValueCollectionValueProvider采用一个NameValueCollection作为数据源,DictionnaryValueProvider的数据源类型自然就是一个Dictionnary。NameValueCollection和Dictionnary都是一个键值对的集合,它们之间的不同之处在NameValueCollection运行元素具有相同的Key,Diction
2015-07-24 16:00:56 647
转载 以ValueProvider为核心的值提供系统1: NameValueCollectionValueProvider
在进行Model绑定过程中,需要根据基于Action方法参数的绑定上下文从请求数据中提取相应的数据以提供相应的数据。具体来说,Model绑定的数据具有多个来源,可能来源于Post的表单或者JSON字符串,或者来源于当前的路由数据,也可能来源于请求地址的插叙字符串。ASP.NET MVC将这种基于不同数据来源的数据获取/提供机制实现在一个叫做ValueProvider的组件中。[本文已经同步到《Ho
2015-07-24 16:00:14 810
转载 ASP.NET MVC三个重要的描述对象四:ParameterDescriptor
Model绑定是为作为目标Action的方法准备参数列表的过程,所以针对参数的描述才是Model绑定的核心。在ASP.NET MVC应用编程接口中,服务于Model绑定的参数元数据通过ParameterDescriptor类型来表示,而ActionDescriptor的GetParameters方法返回的就是一个ParameterDescriptor数组。如下面的代码片断所示,Parame
2015-07-24 15:58:39 333
转载 ASP.NET MVC三个重要的描述对象三:ControllerDescriptor和ActionDescriptor的创建
不论是用于描述Controller的ControllerDescriptor,还是用于描述Action方法的ActionDescriptor,都具有同步和异步两个版本,那么这些不同类型的ControllerDescriptor的ActionDescriptor是在什么情况下创建的呢?一、ControllerActionInvoker与AsyncControllerActionInvoker
2015-07-24 15:57:29 1069
转载 ASP.NET MVC三个重要的描述对象二:ActionDescriptor
在Model绑定过程中会通过激活的Controller类型创建用于描述它的ControllerDescriptor对象。Controller是一组Action方法的集合,而每一个Action通过ActionDescriptor对象来表示,在这篇文章中我们就来着重谈谈不同类型的ActionDescriptor。[本文已经同步到《How ASP.NET MVC Works?》中]目录
2015-07-24 15:56:40 606
转载 ASP.NET MVC三个重要的描述对象一:ControllerDescriptor
ASP.NET MVC应用的请求都是针对某个Controller的某个Action方法,所以对请求的处理最终体现在对目标Action方法的执行。而Action方法具有相应的参数,所以在方法执行之前必须根据相应的规则从请求中提取相应的数据并将其转换为Action方法参数列表,我们将这个过程称为Model绑定。在ASP.NET MVC应用编程接口中,Action方法某个参数的元数据通过Paramete
2015-07-24 15:55:55 481
转载 在ASP.NET MVC中通过URL路由实现对多语言的支持
对于一个需要支持多语言的Web应用,一个很常见的使用方式就是通过请求地址来控制界面呈现所基于的语言文化,比如我们在表示请求地址的URL中将上语言文化代码(比如en或者en-US)来指导服务器应该采用怎样的语言来显示界面的内容。对于一个ASP.NET MVC应用来说,我们很容易通过URL路由来实现这样一个功能。[本文已经同步到《How ASP.NET MVC Works?》中]在具体介绍实现
2015-07-24 15:43:22 1150
转载 Controller激活系统详解 — IoC的应用
所谓控制反转(IoC: Inversion Of Control)简单地说就是应用本身不负责依赖对象的创建和维护,而交给一个外部容器来负责。这样控制权就由应用转移到了外部IoC容器,控制权就实现了所谓的反转。比如在类型A中需要使用类型B的实例,而B实例的创建并不由A来负责,而是通过外部容器来创建。通过IoC的方式是实现针对目标Controller的激活具有重要的意义。目录 一、从Uni
2015-07-24 15:36:24 1069
转载 链接和URL的生成 — UrlHelper V.S. HtmlHelper
ASP.NET 路由系统通过注册的路由表旨在实现两个“方向”的路有功能,即针对入栈请求的路由和出栈URL的生成。前者通过调用代表全局路由表的RouteCollection对象的GetRouteData方法实现,后者则依赖于RouteCollection的GetVirtualPathData方法,而最终还是落在继承自RouteBase的路由对象的同名方法的调用上。为了编程的方面,ASP.NET MV
2015-07-24 15:27:38 2609
转载 对HtmlHelper扩展二:添加RadioButtonList、CheckBoxList
在《为HtmlHelper添加一个RadioButtonList扩展方法》中我通过对HtmlHelper和HtmlHelper的扩展使我们可以采用”RadioButtonList”的方式对一组类型为“radio”的元素进行操作。今天对此进行了一些改进,并将“CheckBoxList”的功能添加进来。[源代码从这里下载]一、有何特别之处?和我的很多文章一样,旨在提供一种大体的解决方案
2015-07-24 15:10:41 1096
转载 对HtmlHelper扩展一:简化“列表控件”的绑定 DropDownList, ListBox
在众多表单元素中,有一类元素用于绑定一组预定义列表。传统的ASP.NET Web Form中,它对应着一组重要的控件类型,即ListControl,我们经常用到DropDownList, ListBox、CheckBoxList和RadioButtonList都是其子类。ASP.NET MVC通过对HtmlHelper和HtmlHelper的扩展实现了对不同类型的元素的绑定,它们以扩展方法的形式定
2015-07-24 15:05:17 1555
转载 ActionResult的本质四:HttpStatusCodeResult & RedirectResult/RedirectToRouteResult
在本系列的最后一篇,我们来讨论最后三个ActionResult:HttpStatusCodeResult、RedirectResult和RedirectToRouteResult 。第一个用于实现针对某个HTTP状态的响应,而后两个用于实现重定向。至于重定向,又分为“暂时重定向”和“永久重定向”,按照响应状态,又称“302重定向”和“301重定向”。[本文已经同步到《How ASP.NET M
2015-07-23 18:10:43 873
转载 ActionResult的本质三:JavaScriptResult & JsonResult
在之前的两篇文章(《EmptyResult & ContentResult》和《FileResult》)我们剖析了EmptyResult、ContentResult和FileResult这三种ActionResult是如何将Action执行的结果响应给客户端的。本篇文章着重介绍在进行Ajax调用中经常使用的两个ActionResult,即JavaScriptResult和JsonResult。[本
2015-07-23 18:09:21 1755
转载 ActionResult的本质二:FileResult
FileResult是一个基于文件的ActionResult,利用FileResult我们可以很容易地将从某个物理文件的内容响应给客户端。ASP.NET MVC定义了三个具体的FileResult,分别是FileContentResult、FilePathResult和FileStreamResult。在这篇文章中我们将探讨三种具体的FileResult是如何将文件内容对请求进行响应的。[本文已经
2015-07-23 18:08:24 754
转载 ActionResult的本质一:EmptyResult & ContentResult
定义在Controller中的Action方法大都返回一个ActionResult对象。ActionResult是对Action执行结果的封装,用于最终对请求进行响应。ASP.NET MVC提供了一系列的ActionResult,它们本质上是通过怎样的方式来响应请求的呢?这是这个系列着重讨论的主题。[本文已经同步到《How ASP.NET MVC Works?》中]目录 一、Act
2015-07-23 18:07:25 672
转载 在VS中让一个JS文件智能提示另一个JS文件中的成员
有时候会有这种情况:当我的一个Web页面引用了两个JS文件(假如分别叫common.js和JScript1.js),如果JScript1.js中需要调用大量的common.js中的方法,这时候在JScript1.js中智能提示(或叫显示文字自动完成)common.js中的成员就显得非常有必要了。其实方法很简单,把common.js往JScript1.js文件的顶部中一拖就可以了,然后它会多
2015-07-23 15:12:59 708
转载 [ASP.NET MVC 小牛之路]18 - Web API
Web API 是ASP.NET平台新加的一个特性,它可以简单快速地创建Web服务为HTTP客户端提供API。Web API 使用的基础库是和一般的MVC框架一样的,但Web API并不是MVC框架的一部分,微软把Web API相关的类从 System.Web.Mvc 命名空间下提取了出来放在 System.Web.Http 命名空间下。这种理念是把 Web API 作为ASP.NET 平台的核心
2015-07-23 15:01:38 684
转载 [ASP.NET MVC 小牛之路]17 - 捆绑(Bundle)
本文介绍 MVC 4 提供的一个新特性:捆绑(Bundle),一个在 View 和 Layout 中用于组织优化浏览器请求的 CSS 和 JavaScript 文件的技术。本文目录了解VS默认加入的脚本库当我们创建一个基本模板的 MVC 工程时,VS在Scripts文件夹中默认加入了一些 JavaScript 脚本库。下面是这些脚本库的简单介绍:jquer
2015-07-23 14:59:40 455
转载 [ASP.NET MVC 小牛之路]16 - Model 验证
上一篇博文 [ASP.NET MVC 小牛之路]15 - Model Binding 中讲了MVC在Model Binding过程中如何根据用户提交HTTP请求数据创建Model对象。在实际的项目中,我们需要对用户提交的信息进行验证。MVC 对验证提供了较好的支持,如可以通过 Model 元数据设置验证规则、用 ModelState 来处理错误信息等。本文将介绍 Model 的各种验证及其使用
2015-07-23 14:57:14 437
转载 [ASP.NET MVC 小牛之路]15 - Model Binding
Model Binding(模型绑定)是 MVC 框架根据 HTTP 请求数据创建 .NET 对象的一个过程。我们之前所有示例中传递给 Action 方法参数的对象都是在 Model Binding 中创建的。本文将介绍 Model Binding 如何工作,及如何使用 Model Binding,最后将演示如何自定义一个 Model Binding 以满足一些高级的需求。本文目录
2015-07-23 14:56:05 794
转载 [ASP.NET MVC 小牛之路]14 - Unobtrusive Ajax
Ajax (Asynchronous JavaScript and XML 的缩写),如我们所见,这个概念的重点已经不再是XML部分,而是 Asynchronous 部分,它是在后台从服务器请求数据的一种模型。MVC 框架内置了对 Unobtrusive Ajax 的支持,它允许我们通过 MVC 的 Help mothod 来定义 Ajax 的特性,而不用在 View 中参杂一大段 JavaScr
2015-07-23 14:54:42 557
转载 [ASP.NET MVC 小牛之路]13 - Helper Method
我们平时编程写一些辅助类的时候习惯用“XxxHelper”来命名。同样,在 MVC 中用于生成 Html 元素的辅助类是 System.Web.Mvc 命名空间下的 HtmlHelper,习惯上我们把 HtmlHelper 中的(扩展)方法叫 HtmlHelper Method,由于使用频繁,就简单称为Helper Method。它的作用是把生成 Html 代码的任务交给 MVC,以便 MVC 能
2015-07-23 14:53:23 499
转载 [ASP.NET MVC 小牛之路]11 - Filter
Filter(筛选器)是基于AOP(面向方面编程)的设计,它的作用是对MVC框架处理客户端请求注入额外的逻辑,以非常简单优美的方式实现横切关注点(Cross-cutting Concerns)。横切关注点是指横越应该程序的多个甚至所有模块的功能,经典的横切关注点有日志记录、缓存处理、异常处理和权限验证等。本文将分别介绍MVC框架所支持的不同种类的Filter的创建和使用,以及如何控制它们的执行。
2015-07-23 14:50:34 423
转载 [ASP.NET MVC 小牛之路]10 - Controller 和 Action (2)
继上一篇文章之后,本文将介绍 Controller 和 Action 的一些较高级特性,包括 Controller Factory、Action Invoker 和异步 Controller 等内容。本文目录开篇:示例准备文章开始之前,我们先来了解一下一个请求的发出到Action方法处理后返回结果的流程,请试着理解下图:本文的重点是 controll
2015-07-23 14:47:09 435
转载 [ASP.NET MVC 小牛之路]09 - Controller 和 Action (1)
我们知道,在 MVC 中每个请求都会提交到 Controller 进行处理。Controller 是和请求密切相关的,它包含了对请求的逻辑处理,能对 Model 进行操作并选择 View 呈现给用户,对于业务和数据的逻辑代码以及接口和辅助类库等一般都不放到 Controller 中。Controller 和 Action 的内容较多,我把它分成了两篇,也可能会分成三篇。本篇介绍 Contr
2015-07-23 14:45:57 383
解除SVN控制
2014-06-07
web前端开发完全技术参考手册
2014-05-12
SVN版本控制与备份
2014-04-27
vs2010字体增加Fixedsys字体
2014-04-22
windows架设SVN服务器及在Visual_Studio_2008使用ANKHSVN插件的进行代码管理
2014-04-22
PB12.5 EBF20488-4595 破解(含classic和.net版)
2014-04-11
dw2xls源码,pb12.0版本
2014-04-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人