可以检查一下是不是因为你的.NET Core CLI正在使用非英语输出。Publish-Module需要根据.NET Core CLI的输出来匹配生成的NuGet包的位置。 Continue reading “如果你在PowerShell Core中无法使用Publish-Module发布NuGet模块”
适用于Windows和MSVC的ccls编译简明指南
ccls是MaskRay编写的一款适用于C/C++/OC的LSP实现。在此基础上,他还针对VSCode编写了对应的插件,用以为这些语言提供编辑器的自动完成、语法提示和错误检查功能。在这篇帖子中,我打算简要总结一下如何在Windows下编译ccls。毕竟这也是各位在VSCode中使用ccls插件的第一步。 Continue reading “适用于Windows和MSVC的ccls编译简明指南”
在部分受信任程序集中,所有的代码都是安全透明的
所以在这个程序集里,即使你给你自己的Exception
派生类的GetObjectData
重写应用了SecurityCriticalAttribute
,这个函数实际上还是安全透明(Security Transparent)的。(可以用反射获知。)但Exception.GetObjectData
是安全关键(Security Critical)的,所以在沙盒程序集中以部分信任的方式加载引发TypeLoadException
也算是在情理之中吧。比如 Continue reading “在部分受信任程序集中,所有的代码都是安全透明的”
如果父进程在子进程启动后创建匿名管道……
那么这些管道句柄将不会由子进程继承。 Continue reading “如果父进程在子进程启动后创建匿名管道……”
手绘
给之前写的JSON-RPC库配了个图。如下图所示,亮瞎眼不偿命 Continue reading “手绘”
突然重复造轮子
大概是想用C#写一个language server给VsCode用,然后发现需要在C#中解析JSON RPC请求。之前在GitHub上大概找了一下,发现貌似有现成的轮子可以用,然而…… Continue reading “突然重复造轮子”
尝试了一下Bot Framework
方才刷了一波MS信仰。明天可以看看自然语言处理工具包。
GitHub:https://github.com/CXuesong/HalfMoon.Endpoint
试用体验:https://github.com/CXuesong/HalfMoon.Endpoint/wiki/%E8%AF%95%E7%94%A8%E4%BD%93%E9%AA%8C
另外,由于目前BotBuilder暂时仅支持.NET Framework 4.6,因此无法将其配合.NET Core使用,也就无法在除Windows以外的系统上运行了。不过,根据#2346的情况,说不定过几天我们就可以将机器人移植到ASP.NET Core上了。 Continue reading “尝试了一下Bot Framework”
AsyncEnumerable 随笔
AsyncEnumerable
主要是伴随着对异步迭代器的需求而产生的。之前在编写WikiClientLibrary的时候,遇到了一个和分页相关的问题。比如我们要从维基服务器获取所有页面的列表。一个最简单、使用异步的想法如下所示
public async Task<IEnumerable<Page>> FetchAllPagesAsync(Site site) { JToken json = await site.SendReuestAsync(/* ... */); // 向服务器请求所有页面 IList<Page> result = PagesFromJson(); // 将获取到的JSON转换为页面列表 return result; }
这样,客户程序可以使用循环或者LINQ来使用这些条目序列。
但情况没有这么简单。服务器在一次请求中最多只能返回500条结果,那么对于大部分的维基而言,我们可能需要多次请求才能获取到所有的结果。那么,我们要怎么处理这种情况呢?
教练,我想学FOR……FORTRAN
感谢Bloodblaze提供的一道简单的题目。以下是一个使用Fortran90进行DFS遍历的例子。具体题面稍后再说。
感谢Wikibooks和StackOverflow。如果没有他们,我是不可能在一夜之间入门Fortran的;-)
另外,我在网上找到了这些资源可供参考: Continue reading “教练,我想学FOR……FORTRAN”
写了一个MediaWiki客户端库
基于.NET PCL的一个异步访问的MediaWiki客户端库,支持.NET Framework 4.5、ASP.NET Core 1.0、Xamarin.iOS和Xamarin.Android,MediaWiki API最低尝试过MediaWiki 1.19 (Wikia)。欢迎前来围观!
坑址:https://github.com/CXuesong/WikiClientLibrary
其他MediaWiki客户端库:https://www.mediawiki.org/wiki/API:Client_code
宣传一下:好像还没想好可以怎么宣传。总之,支持大部分常见的增删查改API,支持生成器,支持文件上传,查询结果无痛分页(使用IAsyncEnumerable
)。