摘要: 根据微信开放文档,在请求 code 时我们可以提供一个名为 state 的参数。该参数用于保持请求和回调的状态,授权请求后原样带回给第三方。该参数可用于防止csrf攻击(跨站请求伪造攻击),建议第三方带上该参数,可设置为简单的随机数加session进行校验。 根据该文档,笔者将用户的返回地址传递到了 阅读全文
posted @ 2021-07-12 19:07 Soar、毅 阅读(2126) 评论(0) 推荐(0) 编辑
摘要: <Image> <Image.Source> <Binding Path="ImageUri"> <Binding.TargetNullValue> <ImageSource>/Assets/PlaceHolder.png</ImageSource> </Binding.TargetNullValu 阅读全文
posted @ 2021-07-12 17:46 Soar、毅 阅读(509) 评论(0) 推荐(0) 编辑
摘要: 向 IIS 发布网站的传统方式是:开发人员在开发机上对项目源代码编译并将生成的程序集复制到服务器上的网站目录中.在 .NET CORE 时代开启后,复制操作很容易因为文件占用而失败. 在经历了一天之内多次复制发布的繁琐操作之后,笔者测试并实现了一个一键发布的流程,该流程简单易实施,仅需两个批处理文件 阅读全文
posted @ 2021-07-12 17:44 Soar、毅 阅读(335) 评论(0) 推荐(0) 编辑
摘要: 如果想得到一个数组中的最小值,一个简单的方法就是 unnest 之后调用 min 函数: SELECT MIN ( t1.i ) FROM ( SELECT UNNEST ( ARRAY [ 1, 2, 3, 4, 5, 6, 7, 8 ] ) i ) t1 或者自定义一个名为 array_min 阅读全文
posted @ 2021-06-03 11:40 Soar、毅 阅读(3172) 评论(0) 推荐(0) 编辑
摘要: 在大数据项目开发过程中,ETL(Extract-Transform-Load)是必不可少。即便目前 JSON 非常流行,开发人员也有必定会有对远古系统的挑战,而 XML 格式的数据源作为经典存在浑身上下散发着浓浓 old money 的味道。 因为有 Newtonsoft.Json 这样优秀的 JS 阅读全文
posted @ 2021-05-24 22:10 Soar、毅 阅读(3410) 评论(13) 推荐(10) 编辑
摘要: 数组是 PostgreSQL 中一个很好用的数据类型,但官方并未提供类似于 array_distinct 之类的数组去重函数,我们可以通过以下操作来实现该功能: 使用 unnest() 将数组转换为一组数据行 使用 DISTINCT 移除重复项 使用 ARRAY(query) 将行再转为数组 ARR 阅读全文
posted @ 2021-05-19 23:05 Soar、毅 阅读(2465) 评论(0) 推荐(0) 编辑
摘要: 自 .NET 发布起,.NET Framework 运行环境就是其摆脱不掉的桎梏。后来有了 .NET Core ,微软终于将自带运行时和单文件程序带给了我们。即便如此,大部分情况下开发者仍然不太满意:一个简简单单的控制台应用程序,甚至只包含一个 Hello World ,附带运行时的单文件程序打包出 阅读全文
posted @ 2021-05-15 12:26 Soar、毅 阅读(1325) 评论(5) 推荐(8) 编辑
摘要: Liquid 是一门开源的模板语言,由 Shopify 创造并用 Ruby 实现。它是 Shopify 主题的主要构成部分,并且被用于加载店铺系统的动态内容。它是一种安全的模板语言,对于非程序员的受众来说也非常容易理解。 Fluid 是一个基于 Liquid 模板语言的开源 .NET 模板引擎。由  阅读全文
posted @ 2021-05-02 21:12 Soar、毅 阅读(1500) 评论(0) 推荐(1) 编辑
摘要: 在 .NET 中,可以使用 YamlDotNet 类库解析和生成 YAML 文件。 YamlDotNet : https://github.com/aaubry/YamlDotNet NuGet 下载:https://www.nuget.org/packages/YamlDotNet/ 帮助文档:h 阅读全文
posted @ 2021-02-04 18:03 Soar、毅 阅读(5303) 评论(0) 推荐(0) 编辑
摘要: Autofac 是一款超赞的 .NET IoC 容器 ,在众多性能测评中,它也是表现最优秀的一个。 它管理类之间的依赖关系, 从而使 应用在规模及复杂性增长的情况下依然可以轻易地修改。它的实现方式是将常规的.net类当做 组件 处理。 简单的性能测试 在 LINQPad 中,我们可以很容易的构建出一 阅读全文
posted @ 2021-01-29 09:29 Soar、毅 阅读(4024) 评论(24) 推荐(20) 编辑