Fork me on GitHub

2013年9月8日

摘要: Entity Framework 5.0系列之约定配置Code First之所以能够让开发人员以一种更加高效、灵活的方式进行数据操作有一个重要的原因在于它的约定配置。现在软件开发越来复杂,大家也都试图将软件设计的越来越灵活,很多内容我们都希望是可配置的,但是过多的配置也会带来很大的工作量,解决这个问题的方法就是约定。对于一些简单的,不太可能经常变化的内容我们以一种约定的方式进行设计。使用过其他ORM框架的朋友可能知道一般ORM都有对应的映射配置文件(一般是一个Xml文件),但是EF并没有。在EF中是以一种约定的方式进行表、列同实体类进行映射的,与此同时为了提高最大的灵活性EF中可以通过Flue 阅读全文
posted @ 2013-09-08 21:57 HackerVirus 阅读(306) 评论(0) 推荐(0)
摘要: 通过一个小问题来学习SQL关联查询原话题:是关于一个left join的,没有技术难度,但不想清楚不一定能回答出正确答案来: TabA表有三个字段Id,Col1,Col2 且里面有一条数据1,1,2 TabB表有两个字段Id,Col1且里面有四条数据1,1 2,2 3,2 4,2问题:如下语句会返回多少条数据?在不写测试脚本的情况下,如果你能在5分钟内准备回答出答案,且能说出些所以然来(及不是凭感觉猜出来的结果),那么请继续看后面的问题。?Select* fromTabA a LeftjoinTabB b1 ona.Col1=b1.Col1LeftjoinTabB b2 ona.Col2=b2 阅读全文
posted @ 2013-09-08 21:52 HackerVirus 阅读(528) 评论(0) 推荐(0)
摘要: SQL语句调优 - 统计信息的含义与作用及维护计算统计信息的含义与作用 对于同一句话,SQL SERVER 有很多种方法来完成它。有些方法适合于数据量比较小的时候,有些方法适合于数据量比较大的时候。同一种方法,在数据量不同的时候,复杂度会有非常大的差别。索引只能帮助SQL SERVER找到符合条件的记录。SQL SERVRE 还需要知道每一种操作所要处理的数据量有多少,从而估算出复杂度,选取一个代价最小的执行计划。说得通俗一点,SQL SERVR要... 阅读全文
posted @ 2013-09-08 21:48 HackerVirus 阅读(287) 评论(0) 推荐(0)
摘要: 面试常备题----数组总结篇(上) 数组是我们程序员最常用的数据结构,也是笔试和面试最喜欢出的题型。要想解决好一道数组题,需要的不仅是扎实的编程基础,更重要的是,要有清晰的思路,因为数组题经常是一些见都没有见过的数学题目,需要我们当场分析其中的规律。 考察数组,最主要的是这几个方面:查找,排序,递归和循环,而这往往考察的就是我们编写高效率代码的能力。编写能够运行的代码并不难,但要编写高效的代码却是一门需要花时间的功夫,甚至可以说与天赋挂上钩,有些人天生就是对算法非常敏感,能够一下子掌握算法的精髓。但事实就是,大部分正在编程的程序员都不具备这种能力,就像我一样。 所幸,真正的事实就是:大部分人的 阅读全文
posted @ 2013-09-08 21:47 HackerVirus 阅读(423) 评论(0) 推荐(0)
摘要: Visual Studio Express: 实现同一套代码针对不同平台工程的编辑和编译目录0. 概述和Portable Class Library1. 配置工程属性2. 修改AssemblyInfo.cs3. 修改当前工程名称4. 建立另一个平台的工程5. 将两个平台的工程整合到一块6. 修改第二个工程的解决方案文件7. 把第一个工程的源代码加入到第二个工程中8. 预处理指令消除编译问题返回目录0. 概述和Portable Class Library首先这里说的内容不是Visual Studio中工程属性的Target framework编译:工程属性的Target framework仅仅是 阅读全文
posted @ 2013-09-08 21:46 HackerVirus 阅读(1850) 评论(0) 推荐(2)
摘要: dispatch队列GCD编程的核心就是dispatch队列,dispatch block的执行最终都会放进某个队列中去进行,它类似NSOperationQueue但更复杂也更强大,并且可以嵌套使用。所以说,结合block实现的GCD,把函数闭包(Closure)的特性发挥得淋漓尽致。dispatch队列的生成可以有这几种方式:1. dispatch_queue_tqueue =dispatch_queue_create("com.dispatch.serial",DISPATCH_QUEUE_SERIAL);//生成一个串行队列,队列中的block按照先进先出(FIFO) 阅读全文
posted @ 2013-09-08 21:44 HackerVirus 阅读(206) 评论(0) 推荐(0)
摘要: SOCKET网络编程快速上手(一)工作以来,写了很多socket相关的代码。磕磕碰碰,走了很多弯路,也积累了一些东西,今天正好整理一下。为了证明不是从书上抄来的,逻辑会有点乱(借口,呵呵)!知识点的介绍也不会像书上说的那么详细和精准,毕竟个人水平也就这样了。当然,主要还是以上手为主,不过分剖析原理性内容。一些陌生的函数要用到的头文件,使用man查看一下就能解决了。既然该文的名称为“快速上手”,那个人认为下述内容都不存在水分,都是必须要掌握的,一点都不能急躁!一、socket连接流程: 对于程序员来说,开始的时候只会把socket编程当成一个工具,尽快上手,尽快解决战斗。于是乎最关心的就是soc 阅读全文
posted @ 2013-09-08 21:43 HackerVirus 阅读(383) 评论(0) 推荐(0)
摘要: Javascript判断两个日期是否相等大家一定遇到过这样的情况,有两个日期对象,然后需要判断他们是否相等。例如:var date1 = new Date("2013-11-29");var date2 = new Date("2013-11-29");console.log(date1 == date2); //false这里,date1和date2看上去是一样的,但是运行 date1 == date2 返回的却是false。这是因为date1、date2都是对象,类型为引用类型,所以如果需要比较他们,需要去比较他们的字面量值,而不是单纯的用 == 来 阅读全文
posted @ 2013-09-08 21:42 HackerVirus 阅读(384) 评论(0) 推荐(0)
摘要: A2D规则引擎写了个简单的规则引擎,普通情况够用了:比如2家公司有各自的利率计算规则,如下:在C#方面,没有写在C#的业务逻辑代码中,而是移到了外部规则文件中,如(ACompanyRatePolicy.r):rule "Level 1" when alreadyCostPrice >= 0 alreadyCostPrice = 100 alreadyCostPrice = 300 then rate = 0.5end不同的公司调用不同的Policy定义文件来执行逻辑:核心调用代码:public class CustomerRa... 阅读全文
posted @ 2013-09-08 00:36 HackerVirus 阅读(491) 评论(0) 推荐(0)
摘要: Django 源码小剖: Django 中的 WSGI2013-09-06 22:31 by 捣乱小子,334阅读,0评论,收藏,编辑Django 其内部已经自带了一个方便本地测试的小服务器, 所以在刚开始学习 Django 的时候并不需搭建 apache 或者 nginx 服务器.Django 自带的服务器基于 python wsgiref 模块实现的, 其百分之七八十的代码都是 wsgiref 中的代码, 只重写了一部分, 所以 Django 自带的服务器测试写个 helloworld 就好了.Django 内置服务器在 django.core.servers 和 django.core. 阅读全文
posted @ 2013-09-08 00:32 HackerVirus 阅读(525) 评论(0) 推荐(0)