随笔分类 - C#
摘要:https://www.qqxiuzi.cn/zh/space.html 在计算机文本排版中,空格字符是不可见的,但通常会占据一定的区域(零宽度空格除外),使得文本达到需要的版式。在程序中,部分空格还能对上下文定义适当的操作,例如连字与不连字。 通常,键盘可以直接输入的是普通空格(U+0020)、T
阅读全文
摘要:# 繁杂的接口含义 `Collection : IList, ICollection, IEnumerable` ICollection 强调是集合,是用来盛放东西的,具有Add(item)、Remove(item)、Contains(item)、Count,API的特点是参数都是元素类型的实例。
阅读全文
摘要:> 返回值是void的异步方法,绝对不能向外抛出异常,否则该异常会直接抛到CLR,导致进程终止。 下面的代码不会导致进程终止 ```csharp public static async void Test() { try { await AsyncMethodWillThrowException()
阅读全文
摘要:发布者.委托 += 订阅者.事件处理程序 发布者 { 在其他成员方法种 委托?。INvoke(this,事件参数) 有可能通过一个public方法封装委托让外界把我事件发布的时机(虽然这很不被推荐)。还有清空订阅的方法,保证始终只有一个订阅者的的方法等等。 } .NET标准的事件模型要求,事件委托是
阅读全文
摘要:问题描述 实现接口中的异步方法时,因为返回值类型是Task或Task\,所以即使方法的具体实现逻辑极简执行极快(比如直接返回一个常量字符串),我们可能也需要被迫新建一个Task去执行,如下: ```csharp public interface IComputer { Task Do(); Task
阅读全文
摘要:microsoft.extensions.configuration microsoft.extensions.configuration.json microsoft.extensions.configuration.binder microsoft.extensions.options.conf
阅读全文
摘要:1. 避免不必要的装箱 自定义结构体 ```csharp struct MyStruct { } ``` FCL,String自带的拼接字符串方法 ```csharp public static String Concat(params object[] args); ``` 示例 ```cshar
阅读全文