摘要:大规模网站瓶颈之一就是性能问题,如何让你的网站飞速运转起来,一直是架构师和开发人员苦于思考的问题。文章将针对基于ASP.NET开发的网站交互性非实时部分进行讨论。 一、WEB加速通常有如下方案: 1、基于ASP.NET技术的页面缓存 基于ASP.NET技术的页面缓存,通常有如下两种应用方式: 一、基于数据库触发(设置缓存依赖策略,当数据库中数据发生变化时,触发缓存失效;但微软提供的解决方案目前仅支持SQL Server,如果是ORACLE需要自己实现触发接口)。 二、基于文件依赖的策略(可以设置缓存依赖于文件中的具体键值,当数据更新时,更新文件键值迫使缓存失效)。 ... 阅读全文
一起谈.NET技术,asp.net控件开发基础(11)
2011-09-01 23:47 by 狼人:-), 144 阅读, 0 推荐, 收藏,
摘要:刚开篇的时后在最后把属性值用视图状态来保存时,得以把当前状态保存下来,关于视图状态的概述,这里不再累赘,没了解过的朋友可以在MSDN里输入视图状态概述了解一下.以下我们还是以以前讲过的内容为例,一起继续来改善控件的使用(第五篇和第九篇的例子) 示例一 我们启用了跟踪,按下确定按钮后,控件属性发生变化,按下无事件按钮后,控件状态则恢复到之前的状态,而且在跟踪状态下发现Custom无视图状态. Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/... 阅读全文
一起谈.NET技术,asp.net控件开发基础(10)
2011-09-01 23:47 by 狼人:-), 201 阅读, 0 推荐, 收藏,
摘要:集合属性相信大家都很熟悉也很常用,如DropDownList,ListBox等控件
<asp:DropDownListID="DropDownList1"runat="server"><asp:ListItem>测试1</asp:ListItem><asp:ListItem>测试2</asp:ListItem><asp:ListItem>测试3</asp:ListItem></asp:DropDownList> 1.实现集合属性效果 经过前面几篇的学习,相信这 阅读全文
一起谈.NET技术,asp.net控件开发基础(9)
2011-09-01 23:47 by 狼人:-), 151 阅读, 0 推荐, 收藏,
摘要:写第五篇的时候,我一步步的加上元数据(特性),使得设计时效果更加好,如对复杂属性应用以下特性,使属性浏览器支持扩展/折叠效果,使你更加容易编辑子属性,但接着我又遇到了问题,所以必须去解决 1.认识默认属性浏览器支持 让我们再认识一下属性,大家知道每个属性都是有类型的,最熟悉就是string,int这些类型了,vs2005属性浏览器对这些属性类型进行了识别, 如下例子 (1)table控件的Height属性,当你设置属性为字符串时,则提示错误信息 (2)当属性类型为Color属性时,属性浏览器为你提供颜色选择器 (3)当属性类型为枚举类型时,属性浏览器则支持下拉框选择 (4... 阅读全文
一起谈.NET技术,asp.net控件开发基础(8)
2011-09-01 23:47 by 狼人:-), 130 阅读, 0 推荐, 收藏,
摘要:有一些复合控件直接把按钮触发事件所需的事情封装好,另外一种则是自定义事件,更具灵活性,当然这是根据需要设计的。以下会以例子来说明的.下面我们假设我们控件中有两个按钮.以下不列出所有代码,具体可在文章最后下载代码. (1) 直接实现按钮事件 在控件中(以下代码并非实现复合控件)直接实现事件则无需自定义事件,如下代码(如果对数据回传有些不熟悉的话,可先看第三篇,希望对你有帮助) 示例一(只列出局部代码,具体可在文章最后下载代码) Code highlighting produced by Actipro CodeHighlighter (freeware)http://ww... 阅读全文
一起谈.NET技术,asp.net控件开发基础(7)
2011-09-01 23:47 by 狼人:-), 208 阅读, 0 推荐, 收藏,
摘要:这次我们要讨论的是复合控件.本文无法一步到位完整介绍,因为讨论的篇幅比较大,所以分两次写,这次就先讲些基本概念吧,剩着的下次写。好象复合控件网上已经有很多教程了,相信大家也看过很多.如果看过的朋友就当我再废话一便,没看过的朋友希望能给你带来帮助。 1.复合控件概念 复合控件跟用户控件有很多相似点,最大不同就是用户控件后缀为ascx,而复合控件编译后则为dll文件,还可以分发给大家使用,另外其他不同点还请参考MSDN吧,说白了,复合控件灵活性更大。 2.复合控件的呈现 (1)一般控件的呈现 从第一篇到第六篇为止,我们用以呈现控件的方法介绍过的有Render方法和Rende... 阅读全文
一起谈.NET技术,MVC开发人员必须拥有的五大工具
2011-09-01 23:46 by 狼人:-), 475 阅读, 0 推荐, 收藏,
摘要:1.Chirpy Zippy:Chirpy Zippy是一个Visual Studio插件,它可以混合,缩小和验证JavaScript,样式表和带点文件,它还能够自动更新T4MVC和其它T4模板。 下载地址:http://down.51cto.com/data/136754 过去,在将JavaScript脚本和CSS文件部署到Web服务器之前,我习惯使用压缩工具进行压缩再部署,安装Chirpy后,你的脚本和CSS文件将会基于其名字自动压缩,例如,假设你有一个名叫myscript.js的脚步文件想要压缩,只要你将其重命名为myscript.yui.js,它就会调用YUI压缩程序自动压... 阅读全文
一起谈.NET技术,.Net 4.0 Parallel 编程(五)Task (中)
2011-09-01 23:46 by 狼人:-), 166 阅读, 0 推荐, 收藏,
摘要:在上篇文章中我们看过了如何创建Task,本篇文章就各种类型Task的使用进行说明。 Task Continuations 首先我们来看看延续的Task,所谓的延续的Task就是在第一个Task完成后自动启动下一个Task。我们通过ContinueWith方法来创建延续的Task。我们假设有一个接受xml解析的服务,首先从某个地方接受文件,然后解析入库,最后返回回执是否解析正确: Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--> ... 阅读全文
一起谈.NET技术,谈谈ASP.NET皮肤机制的实现
2011-09-01 23:46 by 狼人:-), 178 阅读, 0 推荐, 收藏,
摘要:做一个WEB程序,能够在尽量修改极少程序代码的情况下,轻松制定皮肤以及切换皮肤,应该都是需要的,谁也不想,在网站界面想要改版的时候,要改一大片逻辑代码。 一个合格的皮肤机制体系的实现,应该要做到以下几点: ->页面模板上要极少拥有逻辑代码(如果模板上拥有大量逻辑代码,那估计这个也不叫作模板了)。
->能够轻松改变页面布局,同时不影响程序代码(.cs)。
->新模板的定制,基本上能由皮肤制作者参照旧模板自行完成,不需要开发人员太多介入。
->保持性能。 然后,来看看,都有哪些方法大家用来实现所谓的皮肤机制,同时进行各个方法的一些个人说明。 1.改变页面调用的CSS文件来. 阅读全文
一起谈.NET技术,ASP.NET MVC 3 Beta初体验之WebGrid
2011-09-01 23:46 by 狼人:-), 174 阅读, 1 推荐, 收藏,
摘要:ASP.NET MVC 3 Beta中除了推出一种新的视图引擎Razor。还推出了几种新的HtmlHelper。我比较关注的是WebGrid,这篇文章将介绍一下WebGrid的使用。WebGrid提供了分页和排序的功能,在此之前在MVC中分页和排序时需要自己去写的。这篇文章将分别介绍在aspx视图引擎和Razor视图引擎中如何使用它。 我通过ADO.NET Entity Data Model从NORTHWND的Products中表中取数据。在Controller中取数据: Code highlighting produced by Actipro CodeHighlighter (f... 阅读全文
一起谈.NET技术,NET下RabbitMQ实践 [WCF发布篇]
2011-09-01 23:46 by 狼人:-), 236 阅读, 0 推荐, 收藏,
摘要:在之前的两篇文章中,主要介绍了RabbitMQ环境配置,简单示例的编写。今天将会介绍如何使用WCF将RabbitMQ列队以服务的方式进行发布。 注:因为RabbitMQ的官方.net客户端中包括了WCF的SAMPLE代码演示,很适合初学者,所以我就偷了个懒,直接对照它的SAMPLE来说明了,算是借花献佛吧,呵呵。首先我们下载相应源码(基于.NET 3.0),本文主要对该源码包中的代码进行讲解,链接如下: Binary, compiled for .NET 3.0 and newer (zip) - includes example code, the WCF binding and ... 阅读全文
一起谈.NET技术,从数据到代码—通过代码生成机制实现强类型编程[上篇]
2011-09-01 23:46 by 狼人:-), 160 阅读, 0 推荐, 收藏,
摘要:我不知道大家对CodeDOM的代码生成机制是否熟悉,但是有一点可以确定:如果你使用过Visual Studio,你就应该体验过它带给我们在编程上的便利。随便列举三种典型的代码生成的场景:在创建强类型DataSet的时候,VS会自动根据Schema生成相应的C#或者VB.NET代码;当我们编辑Resource文件的时候,相应的的后台代码也会自动生成;当我们通过添加Web Reference调用Web Service或者WCF Service的时候,VS会自动生成服务代理的代码和相应的配置。总的来说,通过和VS集成的动态代码生成工具使我们可以“强类型”的方式进行编程,进而提供我们的效率并减低错.. 阅读全文
一起谈.NET技术,从数据到代码—基于T4的代码生成方式
2011-09-01 23:46 by 狼人:-), 318 阅读, 0 推荐, 收藏,
摘要:在之前写一篇文章《从数据到代码》(上篇、下篇)中,我通过基于CodeDOM+Custom Tool的代码生成方式实现了将一个XML表示的消息列表转换成了相应的C#代码,从而达到了强类型编程的目的。实际上,我们最常用的代码生成当时不是CodeDOM,而是T4,这是一个更为强大,并且适用范围更广的代码生成技术。今天,我将相同的例子通过T4的方式再实现一次,希望为那些对T4不了解的读者带来一些启示。同时这篇文章将作为后续文章的引子,在此之后,我将通过两篇文章通过具体实例的形式讲述如果在项目将T4为我所用,以达到提高开发效率和保证质量的目的。[这里有T4相关的资料][文中的例子可以从这里下载]。 .. 阅读全文
一起谈.NET技术,ASP.NET MVC 3让你疯狂的五大理由
2011-09-01 23:46 by 狼人:-), 212 阅读, 0 推荐, 收藏,
摘要:我总结了ASP.NET MVC 3让我兴奋的五个理由,不知你看了后会有何感想。 1、Razor视图引擎 我不得不说,Razor视图引擎太酷了,我喜欢它那清爽的代码风格,它使用@符号表示代码块,下面的代码在Razor都是合法的: @foreach(variteminModel){<b > @item.FullName</b >} 2、新的助手 助手一直是ASP.NET MVC和其它MVC框架相比不足的地方,ASP.NET MVC 3提供了新的助手,将会缩小这一领域和竞争对手的差距。 Chart:帮助创建图表,非常好用。 WebGrid:以网格形式呈现对象集合,包... 阅读全文
一起谈.NET技术,领域驱动设计案例:Tiny Library:简介
2011-09-01 23:46 by 狼人:-), 306 阅读, 0 推荐, 收藏,
摘要:应广大网友的要求,我最近抽空基于ASP.NET MVC + WCF + Entity Framework做了一个案例,该案例以图书馆图书管理、读者借书、还书为业务背景,以领域驱动设计为思想指导,全程采用Microsoft技术进行实践,希望能够给Microsoft技术的狂热者以及领域驱动设计的学者提供实践参考。
本案例选用的业务逻辑非常简单,所以项目取名上我选用了“Tiny Library”,在后面一章我将详细介绍这个案例的业务逻辑、模型设计与系统架构。 下载案例 本来打算将项目发布到codeplex上,便于大家交流,也便于代码更新与维护,但由于某些原因,我无法在自己的网络环境中连接... 阅读全文
浙公网安备 33010602011771号