摘要: 这次性能问题还是多表连接查询却没走筛选条件的问题。 测试人员反应一查询接口耗时数秒,偶尔还500,让我看看。审查代码发现查询Where筛选条件是有的,不过传递的是一个Func委托,在Func委托内进一步进行筛选。分析sql发现EF根本没走筛选条件。简略Lambda如下: 其中Where筛选传入了一个 阅读全文
posted @ 2019-07-06 16:24 l1honghui 阅读(387) 评论(0) 推荐(0) 编辑
摘要: 查询数据 Entity Framework Core 使用语言集成查询 (LINQ) 来查询数据库中的数据。 通过 LINQ 可使用 C#(或你选择的其他 .NET 语言)基于派生上下文和实体类编写强类型查询。 LINQ 查询的一种表示形式会传递给数据库提供程序,进而转换为特定于数据库的查询语言(例 阅读全文
posted @ 2019-06-10 21:13 l1honghui 阅读(5991) 评论(1) 推荐(1) 编辑
摘要: 最近换公司了,新公司项目技术是用dotnetcore + efcore 做业务层的数据查询。最近早会发言时候,测试提出有个页面查询列表速度特别慢,有几十秒之长。我听着有点诧异,毕竟之前在上一家公司我们接口查询速度必须在200ms以内,有1秒的已经很夸张了,几十秒基本没有用户体验。但是这毕竟不是互联网 阅读全文
posted @ 2019-04-19 16:55 l1honghui 阅读(7428) 评论(2) 推荐(8) 编辑
摘要: 主要是设置一个信号开关,其中一个执行时候另外一个必须处于自旋等待状态,执行完成后修改状态给另外一个线程执行 1、可用lock锁住信号 2、使用volatile 阅读全文
posted @ 2019-03-05 16:21 l1honghui 阅读(334) 评论(0) 推荐(0) 编辑
摘要: 一、委托的定义和基本使用 委托的官方定义如下: 委托类型表示对具有特定参数列表和返回类型的方法的引用。 通过委托,可以将方法视为可分配给变量并可作为参数传递的实体。 委托类似于其他一些语言中的函数指针概念,但与函数指针不同的是,委托不仅面向对象,还类型安全。https://docs.microsof 阅读全文
posted @ 2019-03-02 18:48 l1honghui 阅读(332) 评论(0) 推荐(0) 编辑
摘要: 在项目中可能遇到非父子组件之间需要相互联动,这个时候Vuex帮不上忙,我们需要借用一个新的Vue对象总为事件触发中间件 首先需要声明一个新的Vue对象保存到一个单独js文件bus.js 然后再A组件中添加触发事件的联动事件绑定 然后添加B事件的监听绑定 参考:https://blog.csdn.ne 阅读全文
posted @ 2018-05-30 16:42 l1honghui 阅读(183) 评论(0) 推荐(0) 编辑
摘要: OVER PARTITION BY在oracle分析数据中经常用到的函数,Min Max也会在分析中经常使用,总结一下在Linq中的用法如下 阅读全文
posted @ 2017-09-30 15:38 l1honghui 阅读(1095) 评论(0) 推荐(0) 编辑
摘要: C#因为Lambda表达式的存在,在代码里做分页显得非常简单,Skip后Take就可以了,所以之前也一直没试过在DB做分页。今天尝试在Oracle中做了次分页,发现效果也不错,速度挺快的,sql代码例子如下 阅读全文
posted @ 2017-08-22 16:22 l1honghui 阅读(454) 评论(1) 推荐(0) 编辑
摘要: 产品需求来产生技术提升,产品要求灵活的根据前端传过来的字段来进行可配置的排序,Orderby( e => e.?) orderby方法中是传递一个委托方法,返回一个Object对象,默认就是我们进行排序的属性字段值,所以我们也可以灵活使用这块委托方法,只要能返回对应属性的值就可以让这个表达式成立。 阅读全文
posted @ 2017-08-16 17:26 l1honghui 阅读(1888) 评论(0) 推荐(0) 编辑
摘要: 在做查询时候,有时候因为变更需求,修改查询后的显示字段为一个新增的字段,导致我们的SQL需要修改,这时候我们可能会用到ISNULL函数来简单做显示逻辑处理。 ISNULL 使用指定的替换值替换 NULL。 语法ISNULL ( check_expression , replacement_value 阅读全文
posted @ 2017-02-10 16:53 l1honghui 阅读(363) 评论(0) 推荐(0) 编辑