摘要:一只可爱的猴子:
一次偶然的机会碰到这只猴子,并在工作中也用到它了。现将自己的使用经验分享与此(以OpenSUSE为例介绍)。
对于不熟悉Mono的朋友来说,Mono就是.Net在Linux和其它操作系统上的实现(Unix、Mac、iphone、Windows...)。Mono的官方网站是:http://www.mono-project.com
严格来讲,Mono是一个开源的、跨平台的C#语言和其CLR的实现,并与微软的.NET二进制兼容。很绕口吧,这是Mono官方网站写的:An
open source, cross-platform, implementation of C# and the 阅读全文
艾伟_转载:一个简单的 Generic Factory 类
2011-08-29 00:16 by 狼人:-), 150 阅读, 0 推荐, 收藏,
摘要:简单的工厂类的一个使用场景是, 假设有一个基类 BaseClass, 和一系列的子类 A, B, C, 工厂类根据某个参数,例如字符串 “A”, “B”, “C” 创建出相应的子类。 举例如下:
public class Factory
{ public static BaseClass Create(string name) { switch (name) { case "A": return new A(); case "B": return new B(); cas... 阅读全文
艾伟_转载:IIS URL Rewriting 和 ASP.NET routing(下)
2011-08-29 00:16 by 狼人:-), 148 阅读, 0 推荐, 收藏,
摘要:在IIS URL Rewriting 和 ASP.NET routing(上)中,我们针对IIS URL Rewriting 和 ASP.NET routing的理念和功能分别进行分析并进行对比,在清楚了这些基本原理和异同之后,我们该如何在应用中挑选合适的URL优化方案呢?在本文中,我们将对此进行探讨分析,并例举几种两者协同应用的案例。 本文翻译自IIS官方网站,针对国内惯用的术语进行了部分调整。 我们该如何选择? 首先,如果我们的Web应用程序有任何除了ASP.NET之外的动态网页技术,那么选择是绝对明显的:用IIS URL重写模块(IIS URL-rewrite modul... 阅读全文
艾伟_转载:.NET 4.0新特性-- Corrupted State Exceptions
2011-08-29 00:16 by 狼人:-), 160 阅读, 0 推荐, 收藏,
摘要:作为程序员,我想很多人应该都有过跟异常打交道的经历。而且相信也有很多人也都写过catch(Exception e){//blabla}这种把所有未知异常一股脑儿捕获并处理掉的代码吧。不管是为敷衍客户也好,让程序继续运行以避免糟糕的用户体验也罢,在微软眼中,这种处理方式都是不对的,特别是当你的程序是作为一个插件寄存在别的程序如VS,Offcie中时,这种情况下对有些严重的异常如访问冲突我们更应当是让程序结束而不是继续运行。 然而很多时候,我们并不清楚哪些异常是严重的,哪些是可以让程序继续运行的,因为在.NET 4.0以前,CLR会很忠实的把所有大大小小的异常一股脑儿的都抛给程序员处理。不... 阅读全文
艾伟_转载:.NET 4.0中数组的新增功能
2011-08-29 00:16 by 狼人:-), 143 阅读, 0 推荐, 收藏,
摘要:1、两数组是否“相等”? 在实际开发中,有时我们需要比对两个数组是否拥有一致的元素,例如,以下两个数组由于拥有相同的元素,因此被认为是相等的: Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->int[] arr1 = new int[]{ 1,2,3,4};int[] arr2 = new int[]{ 1,2,3,4}; 在.NET早期版本中,要实现上述数组比对功能,必须自己动手编写一个函数,在其内部使用循环语句... 阅读全文
艾伟_转载:ASP.NET实现类似Excel的数据透视表
2011-08-29 00:16 by 狼人:-), 203 阅读, 0 推荐, 收藏,
摘要:代码: /Files/zhuqil/Pivot.zip 数据透视表提供的数据三维视图效果,在Microsoft Excel能创建数据透视表,但是,它并不会总是很方便使用Excel。您可能希望在Web应用程序中创建一个数据透视报表。创建一个简单的数据透视表可能是一件非常复杂的任务。所以,我打算不但为你提供一个非常有用的工具创建简单和高级的数据透视表,而且为你移除一些笼罩他们的神秘面纱。 目标是:我们想要有能力将datatable中的二维的数据转换成三维视图。
在大多数情况下,你会从数据库的查询数据填充数据表,例如
代码 Code highlighting produced by Ac... 阅读全文
艾伟_转载:IIS URL Rewriting 和 ASP.NET routing(上)
2011-08-29 00:16 by 狼人:-), 145 阅读, 0 推荐, 收藏,
摘要:新版本URL-rewrite module for IIS 7.0的发布了,ASP.NET Routing组件随着.NET Framework 3.5 SP1的发布,并在.NET Framework 4.0 Beta中进一步成熟。作为ASP.NET 开发人员,我们不免会对这两个功能相近的组件抱有许多疑问,诸如“它们有什么异同?”“分别适用于什么环境?”等等。本文旨在描述这两者之间的异同,并为开发人员提供什么时候使用哪一种解决方案的建议。 从表面上看来,这两种技术似乎提供了非常相似的功能:为网站提供用户友好的、搜索引擎友好的Url。然而,在这两种技术在原理上却有着本质的区别,需要深入理解... 阅读全文
艾伟_转载:[一步一步MVC]第二回:还是ActionFilter,实现对业务逻辑的统一Authorize处理
2011-08-29 00:16 by 狼人:-), 200 阅读, 0 推荐, 收藏,
摘要:本系列文章导航[一步一步MVC]第一回:使用ActionSelector控制Action的选择[一步一步MVC]第二回:还是ActionFilter,实现对业务逻辑的统一Authorize处理[一步一步MVC]第三回:MVC范例大观园[一步一步MVC]第四回:漫谈ActionLink,有时“胡搅蛮缠”[一步一步MVC]第五回:让TagBuilder丰富你的HtmlHelper[一步一步MVC]第六回:什么是MVC(上)? 由问题引出
在ASP .NET MVC中,以友好的URL访问资源是MVC吸引眼球的特色之一,但是随之而来对于Authorize问题的处理变得令人令人头痛。例如假设我... 阅读全文
艾伟_转载:.NET Discovery 系列之三--深入理解.NET垃圾收集机制(上)
2011-08-29 00:16 by 狼人:-), 140 阅读, 0 推荐, 收藏,
摘要:本系列文章导航.NET Discovery 系列之一--string从入门到精通(上).NET Discovery 系列之二--string从入门到精通(勘误版下).NET Discovery 系列之三--深入理解.NET垃圾收集机制(上).NET Discovery 系列之四--深入理解.NET垃圾收集机制(下).Net Discovery 系列之五--Me JIT(上).NET Discovery 系列之六--Me JIT(下).NET Discovery 系列之七--深入理解.NET垃圾收集机制(拾贝篇) 前言: 组成.Net平台一个很重要的部分----垃圾收集器(Ga... 阅读全文
艾伟_转载:Socket开发探秘--数据封包和拆包
2011-08-29 00:16 by 狼人:-), 251 阅读, 0 推荐, 收藏,
摘要:在上篇《Socket开发探秘--基类及公共类的定义 》中介绍过,所有受到的数据包,经过系统的预处理后,都会得到一个PreData的数据实体,该实体包含了协议头、协议内容和所属用户的ID。PreData是定义了一个标准的协议数据格式,包含了协议关键字、协议内容、用户标识的内容。前面说了,我们数据是通过实体类作为载体的,我们知道,收到的Socket数据经过粗略的解析后,就是PreData类型的数据,这个是通用的数据格式,我们需要进一步处理才能转化为所能认识的数据对象(实体类对象),同样,我们发送数据的时候,内容部分肯定是按照一定协议规则串联起来的数据,那么我们就需要把实体转化为发送的数据格式。综上 阅读全文
艾伟_转载:Visual Studio DSL 入门 2
2011-08-29 00:16 by 狼人:-), 221 阅读, 0 推荐, 收藏,
摘要:相信如果看过一上篇你已经对vs.net dsl有了一定的了解,接下来我们就来开始我们的这个系列的入门,Vs.net Dsl在国内可能使用的人少之又少,不过希望这个系列能够使看到的人能够对dsl有一定的了解,使之能够成为产品方案选型时的一个参考,能够对阅读的人有所帮助. 准备环境 由于vs.net 2010并未正式发布,所以这一系列基于vs 2008 sp1进行开发,Dsl tools是包含在VSX当中的,所以需要下载 Vistual Stutio.Net SDK 1.1安装,下载地址为:http://msdn.microsoft.com/zh-cn/vsx/default(en-us).a.. 阅读全文
艾伟_转载:VS 2010 和 .NET 4.0 系列之《添加引用对话框的改进》篇
2011-08-29 00:16 by 狼人:-), 108 阅读, 0 推荐, 收藏,
摘要:本系列文章导航VS 2010 和 .NET 4.0 系列之《ASP.NET 4 中的SEO改进 》篇VS 2010 和 .NET 4.0 系列之《干净的Web.Config文件 》篇VS 2010 和 .NET 4.0 系列之《起始项目模板》篇VS 2010 和 .NET 4.0 系列之《多定向支持》篇VS 2010 和 .NET 4.0 系列之《多显示器支持》篇VS 2010 和 .NET 4.0 系列之《代码优化的Web开发Profile》篇VS 2010 和 .NET 4.0 系列之《ASP.NET, HTML, JavaScript 代码片段支持》篇VS 2010 和 .NET 4.0 阅读全文
艾伟_转载:VS 2010 和 .NET 4.0 系列之《VS 2010代码智能提示的改进》篇
2011-08-29 00:16 by 狼人:-), 211 阅读, 0 推荐, 收藏,
摘要:本系列文章导航VS 2010 和 .NET 4.0 系列之《ASP.NET 4 中的SEO改进 》篇VS 2010 和 .NET 4.0 系列之《干净的Web.Config文件 》篇VS 2010 和 .NET 4.0 系列之《起始项目模板》篇VS 2010 和 .NET 4.0 系列之《多定向支持》篇VS 2010 和 .NET 4.0 系列之《多显示器支持》篇VS 2010 和 .NET 4.0 系列之《代码优化的Web开发Profile》篇VS 2010 和 .NET 4.0 系列之《ASP.NET, HTML, JavaScript 代码片段支持》篇VS 2010 和 .NET 4.0 阅读全文
艾伟_转载:Visual Studio DSL 入门 1
2011-08-29 00:16 by 狼人:-), 200 阅读, 0 推荐, 收藏,
摘要:什么是特定领域开发和DSL 特定领域开发是用来解决重复发生的问题的方法,针对每次发生的问题,通过进行总结和分析,他们之间相同的方面可以一次性的解决.而经常变化的方面,可以采用一种特殊的语言表达.针对这个特殊语言,我们可以建立模型或者表达式,然后插入到固定部分. 对于我们软件行业的解决方案来说,固定部分一般采用传统的设计和实现方式,可以为框架,平台,解释器或者编程接口.提供可扩展性,具有高度的抽象性和可复用性.而特定领域语言专门用来创建变化的部分,从而使整个解决方案可具有可应用性. 特定领域语言(DSL,Domain Specific Language)是一种特别用来描述某一专业领域内涵的... 阅读全文
艾伟_转载:简单的自动更新程序实现
2011-08-29 00:16 by 狼人:-), 271 阅读, 0 推荐, 收藏,
摘要:本文将演示一种桌面程序自动更新方案,其步骤比较多,但原理非常简单,通用性尚可,对于小型应用来说,直接拿去就可以用了。
原理
服务器端的结构是这样的: 其工作原理如下:
Update.asmx仅提供一个功能,就是检测是否需要更新,在需要更新的时候就返回一个更新地址,通常情况下返回的地址就是Download.ashx,而在某些特殊情况下,也可以修改服务端使之从其他Url提供更新下载。检测是否需要更新的的具体做法是:首先获取Updata目录中的主程序版本号,再获取数据库中的最新版本号,两者对比。如果相同则直接与客户端提供的版本号相对比并返回结果;如果不同则将主程序版本号写入数据库,然后生成新... 阅读全文
浙公网安备 33010602011771号