摘要:http://www.cnblogs.com/Raoh/archive/2013/03/27/AspNetMvc_IOC.html群里一个技术大牛说MVC有三个注入点,但我只会一个DefaultControllerFactory。 在群友的帮助下,我大致了解了下:IControllerFactory...
阅读全文
摘要:我们在开发系统当中,递归是我们经常使用到底一个算法,如菜单列表,项目类别等。如果递归使用不好,就会造成性能损耗,导致页面加载速度慢等一系列问题。首先我列举三个,大家在日常当中使用的方式:1.循环递归,每次都从数据库查询下一级需要的数据2.一次加载完,再循环递归3.使用多线程,把数据先加载完,再递归我大致想了想,一般同学都是这个三做法。那这三个做法在4560条情况下,它们的执行时间分别是:第一次执行:第二次执行:从上面数据来看,也许不是很准确,但是可以看出来,每次从数据查询绝对很慢。好吧,我贴下代码,最近太忙,没有大致整理,大家凑乎看吧!数据下载:Data.zip代码下载:RecursiveSt
阅读全文
摘要:.NetFrameWork 是微软开发的以"虚拟机"运行,以通用语言运行库为基础,在其上面进行各种语言开发的一个开发平台。C# 是一个和平台更好交互,以托管在虚拟机上的一个语法糖,所有代码最终被编译成通用语言再进行处理。其实就是一个语法糖而已。VisualStudio 是一个工具,是为了帮助我们更好结合C#和.netFramework进行交互的一个开发工具。好了,记录下,送给同样迷茫的同学!
阅读全文
摘要:我们在做B/S的项目,客户端向服务端传值的时候,一般都是request接受。Request常用三个接受方式为:Request.QueryString,Request.Form,Request.Params它们之间关系,很简单 ,我就不列举了。我就贴下 一个我封装的示例代码: class Program { static void Main(string[] args) { //First Method string _id = string.Empty; string _prodctNam...
阅读全文
摘要:最近很多朋友问我电脑什么环境,其实作为一个资深吊丝程序员,没有几个工具那是不行的。我就列举下吧:操作系统:windows 2008 R2.NET开发工具:VS2010/2012数据库:SQL 2008 R2数据库建模工具:PowerDesigner 15.1需求制作工具:balsamiq mockups(装13用),Axure(比较专业)web服务器:IIS7(托管程序),nginx(分布用)缓存服务器:Memcached(windows版本)图片保存数据库:Mongodb(windows版本)文件模板工具:Codesmith(三层用),T4(EF-仓储)版本控制工具:TFS2010(源代码管
阅读全文
摘要:纯粹记录下Lambda的表现形式:(x, y) => x * y;//多参数,隐式类型=>表达式x => x * 10;//单参数,隐式类型=>表达式x => { return x * 10; }; //单参数,隐式类型=>语句块(int x) => x * 10;//单参数,显式类型=>表达式(int x) => { return x * 10; };//单参数,显式类型=>语句块() => Console.WriteLine(); //无参数这里有官方文档:http://msdn.microsoft.com/zh-cn/li
阅读全文
摘要:C#之链式编程(函数模式编程),最近很好像很火,我也尝试练习下。学习链式编程 需要懂两个知识点:1.必须会扩展方法2.lambda+(Func,Action)好了,下面是我的学习代码:class Program { // study chained call 链式调用 static void Main(string[] args) { //One //Product p = new Product() { ProductName = "iphone5", Price = 300 }.First().S...
阅读全文
摘要:Property简称属性,其意思就是封装在类或结构里面的数据字段的描述Attribute简称特性,其意思就是对类或结构的自我描述还是上代码最好了解: /// /// Attribute /// [Serializable] class Prodcut { /// /// Property /// public string ProdcutName { get; set; } /// /// Property /// public int...
阅读全文
摘要:委托是我们C#开发当中使用频率非常的高一个手段,好处我就不列举了。委托早期版本中只有delegate,后期版本有了Func(有返回值)和Action(无返回值)两委托方法。我这里将列举它们三个常用的表现方式,还是老规矩上代码:class Program { private delegate int GetSum(List list); // First Definition Delegate static void Main(string[] args) { //C# delegate List lis...
阅读全文
摘要:扩展方法是我们日常开发当中所经常简化代码,提高性能和代码可读性的一个重要开发手段。扩展方法是一个只能在静态类中声明的静态方法Lambda 是一个表达式 ,学会了 可以使代码简洁,也是装13的利器。还是上实例代码: class Program { static void Main(string[] args) { List list = new List() { new Product{ProductName="Iphone4s", Price=3000}, ...
阅读全文