上一页 1 ··· 312 313 314 315 316 317 318 319 320 ··· 391 下一页
摘要: 在分层架构中,查询操作是很常见的,我们有时总是希望把它写得健壮一些,有时总希望重复代码少一些,可能有时也希望它可以美丽一些,呵呵!在这个系列中,我将为大家解说一下分层架构里的条件过滤,如何去设计它,WEB,BLL,DATA层都干什么事,怎么样使程序更加灵活,更加合理些。目录:一 每个层对于“条件过滤”的职责二 Lambda表达式对于查询语句简化了不少,牺牲的性能可以接受三 将所有过滤条件放到字典里,最后统一过滤四 为Iqueryable结果集添加扩展方法,并添加排序功能五 模块完整代码一 每个层对于“条件过滤”的职责WEB UI 层:整理查询的对象,并进行初始化工作,组织Predi... 阅读全文
posted @ 2012-10-08 17:10 张占岭 阅读(908) 评论(0) 推荐(3)
摘要: 回到目录linq中也有像T—SQL的distinct方法,可以将重复的结果集去重,以下是我们使用 distinct()时需要注意的地方:1 distinct去重记录要求每个字段都重复时,才算重复对象,这与T—SQL保持一至2 disinct语句与orderby语句可以放在一起使用,对彼此不产生影响3 distinct是在数据库端进行的操作,即,你在linq中的distinct与T-SQL的distinct效果一样,不会产生性能问题4 distinct的数据集中不能有复杂对象,如果出现List<T>这种引用类型,那LINQ在解释成T—SQL时,将会把distinct()去掉,从而使去 阅读全文
posted @ 2012-09-25 11:02 张占岭 阅读(3097) 评论(1) 推荐(2)
摘要: 回到目录无论是Linq To SQL还是Linq To Object(Entity frameworks)它们都为开发人员提供了Insert操作,及Insert集合操作,即InsertOnSubmit和InsertAllOnSubmit,前者是将一个实体标记为一个插入状态,而后都是将一个集合标记为插入状态,而当前进行这两种操作时,你并没有与数据库进行连接,这就是LINQ提倡的延时加载,那它们什么时候与数据库进行真正的交互呢,实现上,实验表明,是在触发SubmitChanges方法时,才会真实与数据库进行操作,这是正常的,也没有什么可以说的。 而今天我主要说的就是,当我们进行批量插入时,用lin 阅读全文
posted @ 2012-09-22 23:18 张占岭 阅读(1330) 评论(2) 推荐(1)
摘要: 回到目录我们在开发MVC项目时,由于项目比较大,往往会根据模块去建立Areas,这样不仅可以使程序的结构清晰,而且也有利于进行路由的部属。而在进行Areas的开发时,我们往往会有这样的情况:1 Areas下有自己的_Layout模板,而我们希望所有Areas都用公用的(~/views/shared)下的模板,这样我们应该怎么做呢?两个模版的名称是一样的,在MVC中它会优先使用那个呢?这是我们所关注的问题,经过测试表明,在默认情况下,MVC会使用自己Areas里定义的模板,而不会使用View/Shares目录的,这很正常,因为它的优先级肯定是以离它最近的那个模板为主。总结 views的查询顺应是 阅读全文
posted @ 2012-09-20 11:32 张占岭 阅读(2192) 评论(4) 推荐(4)
摘要: 在写完第一篇和第二篇MVC路由文章后,我觉得还不够,还应该再具体一点说一下分类筛选与MVC路由,如何快速完成一个分类筛选,分类筛选的高亮如何实现,以及MVC路由参数的顺序对参数值的影响等等。今天要说的:一 MVC路由参数的顺序对参数值的影响二 快速完成一个分类筛选三 根据RequestContext.RouteData来实现高亮的菜单一 MVC路由参数的顺序对参数值的影响我们看这两个路由的规则,几乎是相同的,但有个地方你是否注意到,在路由规范中grade与subject参数的顺序是不同的,这个参数顺序在程序中启到什么作用呢?经过实验证明,参数靠后的值会在routedata字典中保留,即当你改变 阅读全文
posted @ 2012-09-19 11:34 张占岭 阅读(1315) 评论(4) 推荐(1)
上一页 1 ··· 312 313 314 315 316 317 318 319 320 ··· 391 下一页