随笔分类 - 小技巧
编程中用到的小技巧
摘要:快两年没写过业务代码了…… 今天帮一个研发团队优化了一下数据库表的查询性能。使用的是表分区。 简单记录了一下步骤,方便直接用: 使用 Trade_Date 新建表分区,从 4 月建立到 2021-6,每月一个单独的分区: ALTER TABLE tbl_original_data PARTITION
阅读全文
摘要:转载一张开源许可的说明图,涉及了几个常见的开源协议的选择,非常易理解。
阅读全文
摘要:你有个任务,需要用到某个开源项目;或者老大交代你一个事情,让你去了解某个东西。怎么下手呢?如何开始呢?我的习惯是这样: 1.首先,查找和阅读该项目的博客和资料,通过google你能找到某个项目大体介绍的博客,快速阅读一下就能对项目的目的、功能、基本使用有个大概的了解。 2.阅读项目的文档,重点关注类
阅读全文
摘要:老是记不住各 Windows 版本中的 .NET 版本号,下面汇总一下: .NET Framework各版本汇总以及之间的关系 Mailbag: What version of the .NET Framework is included in what version of the OS? 这些系
阅读全文
摘要:今天搞这两个关键字搞得有点晕,主要还是没有彻底理解其中的原理。混淆了一个调用异步方法的概念:在调用异步方法时,虽然方法返回一个 Task,但是其中的代码已经开始执行。该方法在调用时,即刻执行了一部分代码,直接最底层的 Async API 处才产生真正的异步操作,这时向上逐步返回,并最终使用一个 Ta...
阅读全文
摘要:今天做了一个 VS 的插件,给大家分享下。暂时有以下三个功能: *添加文件头 在任意文本页面,点击该按钮,可添加文件头: 格式可以在插件对应目录下的 hxyAddIn_FileHeaderTemplate.xml 中修改: ,内容如下: <?xml version="1.0" encoding="utf-8" ?> <FileHeaderTemplate> <NowFormat>yyyyMMdd</NowFormat> <Content> <![CDATA[/***************
阅读全文
摘要:之前做秒杀器的时候,使用的是 WPF 客户端,借助 HttpWebRequest 来实现远程调用。后来看到别人抢火车票的软件是一个 Chrome 插件,发现这样写起来要简单太多了。一直想搞一个插件。今天比较闲,做了一个简单的插件,用于一次性打开多个连续的连接地址,例如这个网页:它一共有 15 页。一页一页点实在太累,这时,可以使用这个插件,点击一下,弹出以下窗口:Url 已经根据当前的连接地址修改好了,调整部分系数,点打开,即在 chrome 里面打开了所有的网页,看完一个关一个就好了:这样一次性加载好,不用点一下等一会儿。有兴趣的朋友可以下载下来玩下,看源码的也行,非常简单,下面是程序和源码
阅读全文
摘要:以下,我使用一个实例,分享一下用于简化泛型API设计的小技巧,“如何在泛型方法调用时,过滤掉可以隐式推断出的泛型参数”: 原有设计: 系统中原来有这样一个静态的泛型API:使用方法:可以看到,该方法虽然可以从参数中隐式推断出 P 的具体类型,但是无法推断出 T 的具体类型,所以需要显式指定T的类型。由于语法特性的问题,我们不能使用RegisterPropertyUser(e = e.Code)的方法来只传递一个泛型参数给API;导致在使用该方法时,不得不把所有的的泛型参数都显式指定,也就是上面的使用方法。灵光一现: 如何做到不传递第二个泛型参数呢?在N天之后,发现了以下这个方法可以简化
阅读全文
摘要:1.建立udl文件可构造连接字符串。 2.完全控制GAC文件目录 3.清除数据库日志文件 BACKUP LOG [STS_pcc-server_1] WITH NO_LOG--收缩数据库DBCC SHRINKDatabase('STS_pcc-server_1') 4. SQL Server数据库的
阅读全文
摘要:I have wrote a article which describes how to deal with a complicate data structure “sortable tree”. See here.As i said, it is so complicate that cann’t be maintain easily.Now, i have found a new fluent way to sort this tree:”Sorting by Double”.“Sorting by double “ is more convinient than int, becau
阅读全文
摘要:方法一:*以各种方式了解这个框架产生的原因,及其主要解决的问题。1%*观察其主要外部接口(这里的外部接口是指公有类型)的使用场景,理解它的核心概念。5%*做些简单实例10% 简单的例子来一边实践一边学习,使用一些时间,主要目的是在过程中加深对核心概念的理解。*把里面比较重要的类列举出来,说明它们都是干什么用的。(比较重要,前期这样直接了解其抽象概念比较符合实际,不要过早深入。)1%*较熟悉框架以后,开始学习它的架构及架构思想。3%*分子系统,深入了解细节。看子系统时,可以先把外部接口都过一遍。或者,可以使用方法二进行学习。other%方法二:(此法不满足螺旋上升的理论,因为不可用于过大的框架。
阅读全文
摘要:前言 这里主要说一个使用using躲过异常的小技巧。 我原来就遇到过类似的问题好几次了,也没想到办法,直接有一天,调试得实在受不了了,才认真想了以下的解决方案。 问题 原来的代码是这样的: public abstract class Command : RoutedUICommand{ private bool _isExecuting = false; public void Execu...
阅读全文