[置顶] 结合枚举理解Attribute的用法

摘要: 引言:昨天在项目中有一个需求,就是把枚举转为一个集合,再把转换得到的集合绑定到一个DropDownList上。我开始觉得很简单,因为使用下面的代码很容易解决: public static List<string> ConvertEnumToList() { var values = Enum.GetNames(typeof(StatisticType)); return values.ToList(); }如上面的代码所示,StatisticType是一个枚举, 定义如下:public enum StatisticType... 阅读全文

posted @ 2011-11-29 23:45 Dely 阅读(450) 评论(0) 推荐(1) 编辑

2014年6月16日

Converter -> public static int ToInt32(double value) 你用对了么?

摘要: Convert.ToInt32() 是我们经常使用的方法,但如果我们写如下的代码,能确定它的输出值么?1 var x = 7.5;2 Console.WriteLine(7.5 + ": " + Convert.ToInt32(x));3 x = 6.5;4 Console.WriteLin... 阅读全文

posted @ 2014-06-16 23:49 Dely 阅读(808) 评论(0) 推荐(0) 编辑

2013年10月15日

StructureMap 学习笔记(1)

摘要: 前言一个偶然的机会接触到了StructureMap,当时客户要求让程序具有较好的测试性,自然而然就想到了IOC 容器。 之后就去Google了一下, 不经意间在StackOverFlow找到一篇帖子推荐使用StructureMap, 然后就稀里糊涂的引用到了项目中使用了。依我看来,StructureMap很容易上手,照着官网(http://docs.structuremap.net/QuickStart.htm) 的例子,很快就能使用。 渐渐地也熟悉了StructureMap的用法,但只是会用,而没有深入的了解。 近段时间一直在学习设计模式,并且想看一些开源的项目, 于是乎就想深入了解Stru 阅读全文

posted @ 2013-10-15 23:47 Dely 阅读(708) 评论(1) 推荐(0) 编辑

2013年9月22日

Covarience And ContraVariance

摘要: 1 using System; 2 using System.Collections.Generic; 3 using System.IO; 4 5 namespace CovarientAndContraVarient 6 { 7 class Program 8 { 9 static object GetObject() { return null; } 10 static void SetObject(object obj) { } 11 12 static string GetString() { r... 阅读全文

posted @ 2013-09-22 22:59 Dely 阅读(557) 评论(0) 推荐(1) 编辑

2011年11月30日

Inverse Of Control(Dependency Injection) 学习总结

摘要: 前言最近在学习Silverlight的时候, 了解到概念”Inverse Of Control” 和 “Dependency Injection”, 但是很遗憾书中并没有进行详细的说明, 所以自己花了点时间来弄懂这些概念和实际中的运用, 希望能和大家分享下。能力有限,希望指正。内聚(Cohesion) 耦合(Coupling)我们经常说到程序设计的规则是”高内聚,低耦合”, 那么什么是”高内聚”?什么又是”低耦合” 呢? 通过看了一些帖子和问题,自己总结了一下:内聚(cohesion): 通常是指一个模块(或者是类)内部相互依赖的程度,通俗的来讲就是一个类功能的多少,如果这个模块干得事情越少, 阅读全文

posted @ 2011-11-30 02:18 Dely 阅读(551) 评论(0) 推荐(0) 编辑

2011年10月31日

IIS如何处理一个Asp.net请求 (How IIS Process Asp.net request)

摘要: 当一个Request由客户端发送到IIS,IIS会处理这个请求并且发送对应的资源到客户端。那么IIS是怎么处理这个Request,Asp.net在IIS 处理Request的过程中扮演一个什么角色呢? 我一直都对这个问题感兴趣,经过一个周末的努力,自己对这个问题有了一定的了解,并分享我的见解,如果有错误和不足,希望指正。。当IIS接受到一个Request, 最先对Request进行处理的是HTTP.SYS, 它的作用是将Request分发到对应的应用程序池(Application Pool),这里会引发出两个问题:1.什么是应用程序池?2. HTTP.SYS是如何将Request正确分发到对应 阅读全文

posted @ 2011-10-31 01:10 Dely 阅读(1031) 评论(0) 推荐(0) 编辑

2011年10月22日

TortoiseHg + Mercurial 配置MqExtension实现删除分支(Strip the reversion)

摘要: 1. 点开 ToroiseHg Workbench,点击"File"->选择"Settings"->"编辑文件":2. 添加[extensions]mq=这两行到配置文件中,然后点Save,重启TortoiseHg Workbench.3. 如果设置成功会出现下图的效果点击Strip就可以删除节点了更多的信息可以参阅:http://mercurial.selenic.com/wiki/CategoryBundledExtension 阅读全文

posted @ 2011-10-22 01:47 Dely 阅读(1544) 评论(0) 推荐(0) 编辑

2011年10月21日

MCV 添加filter操作

摘要: 今天在项目中发现使用了Filter功能,当用户没有某个module中Action的权限时,会跳转到错误页面。自己是MVC的初学着,对Filter工作原理的理解一无所知,所以对这Filter方面的知识进行了调研。首先介绍一下这个项目的背景,本项目是一个网络游戏数据库后台管理程序,用于某些数据的增删改查功能。 它包含几个模块比如:用户管理,日志管理,流量统计等。 不同的后台用户有不同的访问权限,例如:某类型的用户只能访问用户管理模块的查看功能,但没有权限去删除和添加用户。数据库设计如下:在Modules表中每一行记录表示一个controller即一个模块,ModuleActons表中每一行记录表示 阅读全文

posted @ 2011-10-21 00:51 Dely 阅读(333) 评论(0) 推荐(1) 编辑

2011年6月4日

System.Console.WriteLine() 含参数的调用原理

摘要: Console.WriteLine()是我使用最多的方法之一,用于控制台输出。但是说到此方法底层调用的原理,可能有些童鞋就不是很清楚了,下面是我自己的理解: 1 当我们在控制台输出信息,并且要对传递的参数进行格式化输出时,我们需要调用Console.WriteLine()方法,例如: int num = 43; Console.WriteLine("This is a {0:E} number",num); 2 那么程序底层是如何调用此方法的呢? 首先,它会将所有参数传递给String.Format()方法,String.Format("This is a {0: 阅读全文

posted @ 2011-06-04 02:43 Dely 阅读(892) 评论(0) 推荐(1) 编辑

导航