Loading

摘要:前言 以前需要提供Web服务接口的时候,除了标准的WEBAPI形式,还考虑了OData、GraphQL等形式,虽然实现思路上有很大的区别,但对使用方来说,都是将查询的主动权让渡给了前端,让调用方能够更加自由地发挥或者符合自己要求的数据。其中,OData作为传统REST WEBAPI的拓展,对外还是W 阅读全文
posted @ 2021-02-10 00:43 波多尔斯基 阅读(801) 评论(9) 推荐(8) 编辑
摘要:当编写应用程序时,经常性需要花费大量的时间与精力处理业务逻辑,往往业务逻辑的变化需要重构或者增加大量代码,对开发测试人员很不友好。 之前在这篇文章说过,可以使用脚本引擎来将我们需要经常变化的代码进行动态编译执行,自由度非常大,不过对应的需要资源也多。如果只是针对非常具体业务逻辑的变化,可以尝试使用R 阅读全文
posted @ 2021-02-06 00:17 波多尔斯基 阅读(2086) 评论(3) 推荐(21) 编辑
摘要:本文属于OData系列 目录 武装你的WEBAPI-OData入门 武装你的WEBAPI-OData便捷查询 武装你的WEBAPI-OData分页查询 武装你的WEBAPI-OData资源更新Delta 武装你的WEBAPI-OData之EDM 武装你的WEBAPI-OData使用Endpoint 阅读全文
posted @ 2021-02-02 22:39 波多尔斯基 阅读(291) 评论(1) 推荐(0) 编辑
摘要:编写上位机与下位机通信的时候,涉及到协议的转换,比较多会使用到二进制。传统的方法,是将数据整体获取到byte数组中,然后逐字节对数据进行解析。这样操作工作量比较大,对于较长数据段更容易计算位置出错。 其实,对于下位机给出通讯的数据结构的情况下,可以直接使用C#的struct将数据直接转换。需要使用到 阅读全文
posted @ 2021-01-20 14:50 波多尔斯基 阅读(587) 评论(1) 推荐(3) 编辑
摘要:借鉴之前的Pipeline的操作方式,现在目标是给串口读取操作也使用上Pipeline。稍微改造一下,以下代码可以直接运行。 协议为使用连续的4个0XFF作为结尾,没有头标志。数据总长为68位定长。 我需要判断从开始到选定位置是否长度足够,这里面用来判断segment长度我用了这个方式。 buffe 阅读全文
posted @ 2021-01-18 19:31 波多尔斯基 阅读(239) 评论(0) 推荐(0) 编辑
摘要:很多年以前开始使用markdown写博客的时候,当时博客园的web编辑器还不是那么好用,就特别想有一个优秀的编辑器可以直接发布到博客园的。偶然间发现一个非常好用的MarkWord,可以实现markdown本地编辑后发布到远程的功能,重点是实时预览、图片可以直接Ctrl+C Ctrl+V,写作的过程简 阅读全文
posted @ 2021-01-12 10:43 波多尔斯基 阅读(608) 评论(0) 推荐(0) 编辑
摘要:经常使用swagger,可以通过设置[ProducesResponseType]标记接口的返回信息;swagger也能通过接口的参数列表,自动获得发送的数据结构信息。 不过有一个例外,就是上传文件的时候,设置了[Consumes]的内容为multi-part/form-data,但是swagger并 阅读全文
posted @ 2020-12-30 19:47 波多尔斯基 阅读(1735) 评论(3) 推荐(3) 编辑
摘要:最近想要在程序中嵌入一个C#脚本引擎,在.NET Framework时代用过一个叫做CS-Script的东西,感觉还是不错,发现现在也支持.NET Core了,试着嵌入一下。 比较 要说能够运行C#脚本的解决方案,有Roslyn和Mono,与他们相比,CS-Script能够提供的封装更为高级,它底层 阅读全文
posted @ 2020-12-28 11:12 波多尔斯基 阅读(2892) 评论(17) 推荐(20) 编辑
摘要:我有一个想法,有一个能够进行跨平台的高性能数据协议规范,能够让数据在两个不同的程序之间进行读取,最好能够支持直接将object序列化,那就完美了。 目标 支持任意Object序列化 支持从类似System.String的字符串中获取类的信息并进行反序列化 支持简单对象的直接序列化与反序列化 方案 X 阅读全文
posted @ 2020-12-22 10:29 波多尔斯基 阅读(631) 评论(2) 推荐(3) 编辑
摘要:进行插件式编程的时候,经常性地弹出这么个东西找到的程序集清单定义与程序集引用不匹配。 (异常来自 HRESULT:0x80131040),往往这种问题特别难以解决,搞定了一个还要出另外一个。得研究一下怎么处理。 引用不匹配 这里提示需要加载一个4.2.0.0版本的dll,我先看看文件夹下面有没有对应 阅读全文
posted @ 2020-12-20 12:53 波多尔斯基 阅读(308) 评论(0) 推荐(3) 编辑