摘要:
一、RouteBase 前面我们知道,UrlRoutingModule通过遍历RouteTable.Routes中的路由对象来获取匹配的RouteData,从而将请求转发到相应的IHttpHandler处理程序。RouteTable.Routes是一个RouteBase对象集合,可向集合中添加任何RouteBase的子类。所以,我们可以通过创建一个RouteBase的子类,然后将其添加到Rout... 阅读全文
摘要:
之所以说MVC框架很灵活,在于其扩展性很强,几乎在请求处理管道的任何一个节点都可以扩展。本系列文章将会对扩展点进行总结整理,以此增强对MVC框架的了解。 MVC是建立在路由系统之上的,所以严格上讲,路由系统并不属于MVC框架,路由系统是.NET Framework 3.5 SP1新增的内容,位于System.Web.Routing命名空间。 下面为ASP.NET MVC请求处理管道示意图(注:来源于Steven Sanderson所著《Pro ASP.NET MVC Framework》一书): 当IIS接收到一个请求后,将按以下步骤进行处理: 1、IIS根 阅读全文
摘要:
OK,就像标题呈现的一样,SQL Server 2008中的MERGE语句能做很多事情,它的功能是根据源表对目标表执行插入、更新或删除操作。最典型的应用就是进行两个表的同步。下面通过一个简单示例来演示MERGE语句的使用方法,假设数据库中有两个表Product及ProductNew,我们的任务是将Product的数据同步到ProductNew(当然同步可能是每天通过Job来自动完成的,在此我们只关... 阅读全文
摘要:
今天基本搞清楚SQL Server中递归查询的实现方式,So,先记录下来。不过呢,个人觉得SQL Server的递归查询相对于Oracle中的递归查询更加难以理解。 从SQL Server 2005开始,我们可以直接通过CTE来支持递归查询,这对查询树形或层次结构的数据很有用。CTE即公用表表达式,虽然不恰当,但你可以将它看做成一个临时命名的结果集合。 我们先建立一个示例表,名称为MENU,表示菜... 阅读全文
摘要:
在WinForm中,将DataGridView控件的列的AutoSizeMode属性设置为Fill,然后将FillWeight属性设置为列宽所占的权重,这样可实现列宽自动填充列,下图说明自动填充宽度的算法: 但是在Silverlight中,DataGrid控件的列宽只有四种模式:Auto、Pixel、SizeToCells、SizeToHeader,没有Fill模式,无法实现自动填充列宽。那怎么实... 阅读全文
摘要:
本文将讲述LINQ的基础查询(此文所有例子都使用LINQ to Object)在此之前,我们先创建一个用于示例的数据源: Student类:表示学生,包括学号、姓名及班级 Courses类:表示学生选择的课程,包括学号、课程名称及学时数 DataCreator类:静态类,通过GenerateData方法产生示例数据 生成的数据如下:学号 姓名 班级 课程名称 学时 003 王五 二班 经济学 ... 阅读全文
摘要:
LINQ即语言集成查询,是.NET Framework 3.5中新增的功能。其功能类似于数据库中的SQL语句(实际上LINQ就是针对.NET Framework的SQL):提供标准的、易于学习的查询和更新数据模式。从from开始 用过SQL的朋友都知道,最简单的SQL语句SELECT record FROM tableName:获取表中的所有记录,那么对应于LINQ,其语法如下:from reco... 阅读全文
摘要:
按微软的定义,服务是一个长时间运行的可执行文件,它不支持用户界面,并运行在特殊的用户账户之下,也可以在没有任何用户登录计算机的情况下运行。默认情况下,服务运行在System账户之下。与一般的应用程序相比,服务自动运行的,并且无需与用户交互。在.Net Framework中,与Windows服务相关的类位于System.ServiceProcess命名空间之下,其中,ServiceBase类提供Wi... 阅读全文
摘要:
今天想安装一个Oracle数据库来做测试,为了也学习下Linux操作系统,所以将那台闲置已久的台式机全部格式化,重新安装Linux。但在实际操作过程中遇到很多问题,在此记录下来,以备后用。首先,Linux选择的是Redhatlinux enterprise 5版本,安装过程很简单,基本没遇上什么问题,唯一要注意的是安装过程中,应该输入序列号,否则只会安装Desktop。安装完成后,在随后安装显卡驱... 阅读全文
摘要:
信道及信道栈 前面已经提及过,WCF中客户端与服务端的交互都是通过消息来进行的。消息从客户端传送到服务端会经过多个处理动作,在WCF编程模型中,这些动作是按层次进行的:上一层次对消息处理完成后,将消息传递给下一层次,依次类推。这里对应的每个层即为信道(我们可以理解为消息通道)。而这一些列的信道层构成了一个信道栈。明显的,信道栈中的最后一个信道应该是传输信道,该信道将处理后的消息发送给服务端或接受从... 阅读全文