摘要:说到ASP.NET缓存,那就是:尽早缓存;经常接触缓存的您应该在应用程序的每一层都实现缓存。向数据层、业务逻辑层、UI或输出层添加缓存支持。内存现在非常便宜—因此,通过以智能的方式在整个应用程序中实现缓存,可以获得很大的性能提高。缓存可以掩盖许多过失缓存是一种无需大量时间和分析就可以获得“足够良好的”性能的方法。 这里再次强调,内存现在非常便宜,因此,如果您能通过将输出缓存30秒,而不是花上一整天甚至一周的时间尝试优化代码或数据库就可以获得所需的性能,您肯定会选择缓存解决方案(假设可以接受30秒的旧数据)。缓存正是那些利用20%付出获得80%回报的特性之一,因此,要提高性能,应该首先想... 阅读全文
一起谈.NET技术,从.NET中委托写法的演变谈开去(上):委托与匿名方法
2011-08-29 19:30 by 狼人:-), 189 阅读, 0 推荐, 收藏,
摘要:在《关于最近面试的一点感想》一文中,Michael同学谈到他在面试时询问对方“delegate在.net framework1.1,2.0,3.5各可以怎么写”这个问题。于是乎,有朋友回复道“请问楼主,茴香豆的茴有几种写法”,“当代孔乙己”,独乐,众乐。看了所有的评论,除了某些朋友认为“的确不该不知道这个问题”之外,似乎没有什么人在明确支持楼主。
不过我支持,为什么?因为我也提过出这样的问题。
这样,我们暂且不提应聘“高级开发人员”的人,在“自称熟悉各版本.NET框架”的前提下,是否应该知道这个答案。我们也暂且不提Michael同学提问的“目的”是什么。老赵就先单独针对这个问题进行解释,然后谈 阅读全文
一起谈.NET技术,现有ASP.NET MVC框架应用巧妙移植到手机
2011-08-29 19:30 by 狼人:-), 467 阅读, 0 推荐, 收藏,
摘要:客户对产品质量非常满意,因此在项目完成后又给我们另外一个订单,即部署客户程序到Windows智能手机设备上。但是我们项目团队成员以前都没有这种开发经验。我们的计划是通过最小限度的修改现有程序代码,使其可以运行在Windo智能手机上。 移动设备Web应用工具箱(WebApplicationToolkitforMobileDevices) 我们选择了微软移动设备Web应用开发工具箱作为解决方案。使用这个免费的工具,可以轻松将基于MVC框架的Web应用扩展到移动设备上。
下载地址: http://code.msdn.microsoft.com/WebAppToolkitMobile/Rel... 阅读全文
一起谈.NET技术,从.NET中委托写法的演变谈开去(中):Lambda表达式及其优势
2011-08-29 19:30 by 狼人:-), 175 阅读, 0 推荐, 收藏,
摘要:在上一篇文章中我们简单探讨了.NET 1.x和.NET 2.0中委托表现形式的变化,以及.NET 2.0中匿名方法的优势、目的及注意事项。那么现在我们来谈一下.NET 3.5(C# 3.0)中,委托的表现形式又演变成了什么样子,还有什么特点和作用。
.NET 3.5中委托的写法(Lambda表达式)
Lambda表达式在C#中的写法是“arg-list => expr-body”,“=>”符号左边为表达式的参数列表,右边则是表达式体(body)。参数列表可以包含0到多个参数,参数之间使用逗号分割。例如,以下便是一个使用Lambda表达式定义了委托的示例1:
Func<int, 阅读全文
一起谈.NET技术,中软面试题-最新
2011-08-29 19:27 by 狼人:-), 551 阅读, 0 推荐, 收藏,
摘要:中软的面试比较经典,也比较严格,一般有四轮,类似于微软的面试。中软面过以后,根据项目组,会推到美国微软那边运用live meeting & con-call 再面一次。以下是我的面试题及个人的小分析,拿出来和大家share一下。希望更多的人能过这个坎。如有什么问题,可以一起交流。直接进入主题:
1. English communication. (sale yourself, project information, your interesting,and how to deal with problem you encounter etc.)
2. the using of key 阅读全文
一起谈.NET技术,JavaScript 调用 ASP.NET WebService 的简单方法
2011-08-29 19:27 by 狼人:-), 279 阅读, 0 推荐, 收藏,
摘要:客户端 JavaScript 调用 ASP.NET WebService 的方法除了采用 WebServer.htc 和构造 SOAPAction 的方法外,下面介绍一个采用 Ajax调用的简单方法,并且可以传递参数。其实,ASP.NET WebService 就是一个网站,所以,Request 对象是可用的,这样,传递参数就很容易了。下面是一个WebService1.asmx的代码: ASMX 代码:
Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.c... 阅读全文
一起谈.NET技术,WPF Multi-Touch 开发:基础触屏操作(Raw Touch)
2011-08-29 19:26 by 狼人:-), 553 阅读, 0 推荐, 收藏,
摘要:多点触控(Multi-Touch)就是通过与触屏设备的接触达到人与应用程序交互的操作过程。例如,生活中经常使用的触屏手机、触屏笔记本、显示器以及微软最新的Surface 产品等这些都属于触屏操作设备。本篇将介绍如何开发能够支持MT 功能的应用程序。 在WPF 4 中已经具备的多点触控开发技术,当多个手指触碰到触屏设备时,WPF 会把每跟手指认为是一个触控设备,并为其分配唯一的识别ID,以便跟踪不同手指的操作手势。下面将通过实例演示WPF 所支持的低级别触控操作:触碰(TouchDown)、分离(TouchUp)、移动(TouchMove),它们都是一些最基础的操作模式。 创建项目
... 阅读全文
一起谈.NET技术,构建高性能ASP.NET站点之三 细节决定成败
2011-08-29 19:26 by 狼人:-), 166 阅读, 0 推荐, 收藏,
摘要:前言:曾经就因为一个小小的疏忽,从而导致了服务器崩溃了,后来才发现:原来就是因为一个循环而导致的,所以,对“注意细节“这一说法是深有感触。 问题的描述 首先,描述一下故事的背景:(希望大家耐心的故事读完) 在网站中,网页中的分页控件每次显示10条数据,每次点击下一页,就再次去取下一个10条数据。至于分页的方法怎样做,方法有很多,相信这点大家都知道。 过程是这样的:在用户请求数据的时候(考虑到了用户的操作和网站的访问量)我会第一次取出500条数据,然后把数据放在缓存中,也就是说,我取出了50页的数据,放在缓存中,这样如果,以后用户请求第一页到第49页的时候,就直接从缓存中拿数... 阅读全文
一起谈.NET技术,LINQ to SQL快速上手 step by step
2011-08-29 19:26 by 狼人:-), 192 阅读, 0 推荐, 收藏,
摘要:前言 最近接连遇到几个朋友问我同一个问题,就是关于.NET平台上ORM框架的选择。我想在这个讲求效率的时代,谁也不想手写SQL或存储过程去访问数据库了。大家都知道,在Java平台上,ORM这一块基本是Hibernate的天下。当然,相对轻量级的iBatis也有不错的表现。 不过谈到.NET平台,ORM框架似乎相对混乱了点。很多朋友问我的时候,往往会这样问:NHibernate、NBear和Castle该选择哪个?而当我反问:为什么不适用微软自带的Linq to Sql呢?对方经常会迷茫和不解。 我觉得这是个很奇怪的现象。依照我个人的实践,我认为当需要快速构建一个中小型项目时,Linq t... 阅读全文
一起谈.NET技术,.NET4.0的可扩展缓存系统
2011-08-29 19:26 by 狼人:-), 434 阅读, 0 推荐, 收藏,
摘要:.NET Framework中,叫做System.Runtime.Caching,这不仅是个缓存库,还是个框架,可以在上面开发自己的库。ObjectCache定义了所有缓存都要实现的通用操作。与之搭配的是个内存缓存实现,叫做MemoryCache。这个缓存系统的结构如下: 上图大家可以看出来对应那些产品了吗? 下面我给大家介绍一个实现这样一个架构的代码示例,代码的核心就是ObjectCache,定义一个抽象的Provider接口: 1: public interface ICacheBuilder 2: { 3: ObjectCache Get... 阅读全文
一起谈.NET技术,WebForm:毒药还是利器?
2011-08-29 19:26 by 狼人:-), 530 阅读, 0 推荐, 收藏,
摘要:一、Webform的诞生及运行机制,web开发带来的革命性变化 九十年代中期,Internet崭露头角。为了进军Web应用程序行业,微软开发了Active ServerPages(ASP)。ASP是开发Web页面的一种快速、简便的方式。ASP页面由一个页面组成,其中包含了标记和语言的混合。ASP的强大之处在于,在页面发送给终端用户的Web浏览器之前,可以在页面上包含在Web服务器上执行的VBScript或JScript代码指令。这是创建动态Web页面的一种简单方式,动态Web页面可以根据开发人员规定的参数进行定制。 随着时间的推移,ASP页面上需要放置越来越多的HTML、VBS... 阅读全文
一起谈.NET技术,如何对ASP.NET进行性能优化
2011-08-29 19:26 by 狼人:-), 186 阅读, 0 推荐, 收藏,
摘要:一、SqlDataRead和Dataset的选择 Sqldataread优点:读取数据非常快。如果对返回的数据不需做大量处理的情况下,建议使用SqlDataReader,其性能要比datset好很多。缺点:直到数据读完才可close掉于数据库的连接。 (SqlDataReader 读数据是快速向前的。SqlDataReader 类提供了一种读取从 SQL Server 数据库检索的只进数据流的方法。它使用 SQL Server 的本机网络数据传输格式从数据库连接直接读取数据。DataReader需及时显式的close。可及时的释放对数据的连接。) Dataset是把数据读... 阅读全文
一起谈.NET技术,.NET 3.x新特性之自动属性及集合初始化
2011-08-29 19:26 by 狼人:-), 268 阅读, 0 推荐, 收藏,
摘要:今天公司弄了个VS2008 beta 2中文版,虽然很大一部分是为了JS的智能提示外,也应该好好的温习一下.NET的一些新特性,由于以前写过一些文章,但是都没有系统的学过,都只是尝一下新鲜感。不知道从那开始,所以今天就来看看自动话属性,以及对象初始化和集合初始化的一些新特性。 1.自动属性 在做一个程序是我们离不开属性,特别是实体类。我们用指头一个一个的敲着get和set及局部的变量(Fields),现在可好不用在重复敲那些东东了我们只要用到get和set,就和我们的接口声明差不多了,是不是很happy。 OK看个例子先,在.NET 2.0下我们声明一个实体类要有如下做法,这... 阅读全文
一起谈.NET技术,ASP.NET MVC之视图引擎
2011-08-29 19:26 by 狼人:-), 237 阅读, 0 推荐, 收藏,
摘要:最近微软发布了另外一个在ASP.NET MVC上应用的视图引擎Razor。通过前面一系列的探讨,我想大部分都了解了ASP.NET MVC整个的原理,包括TempData、ViewData、ModelBinding、Filter等,但是我们还不是太了解它的视图引擎的情况。ASP.NET MVC的视图引擎具有非常好的扩展性,我们可以使用其它的视图引擎代替WebForm,或是同时使用多种试图引擎,这些都得益于ASP.NET MVC精美的设计,下面我们一起来观赏一下它的设计。 内容概览: ActionResult做了什么?
最具代表性的ViewResult
ASP.NET MVC的视图引擎... 阅读全文
一起谈.NET技术,WPF Multi-Touch 开发:Windows 7 安装多点触屏模拟器
2011-08-29 19:26 by 狼人:-), 339 阅读, 1 推荐, 收藏,
摘要:本系列将介绍Multi-Touch(MT)多点触控技术的相关内容,使开发人员了解如何在Windows 平台中开发出具有MT 功能的应用程序。众所周知Windows 7 操作系统自身已经支持具有MT 功能的硬件设备, 画板程序(Paint)就是一个很好的例子,如果你的显示设备具有MT 功能,便可以用两个手指同时在画板中绘制不同的图案。 作为开发者对MT 应用程序进行测试的时候,当然需要MT 硬件设备的支持,否则我们无法判断程序是否能够正常运行。虽然现在市面上的MT 设备已经很多,但价格也都不菲。如果没有多点触控设备能否进行MT 程序的开发与测试呢? 答案当然是可以的,下文将... 阅读全文