原创 Blazor獲取組件變量值

提問 如何獲取Blazor組件變量值 回答 給組件添加@ref,即可在父組件中獲取子組件內容 示例 父組件引用子組件 // 聲明子組件 private SelectEquips _selectEquips = null!; //使用子組件

原创 EF Core模型設置主鍵自增

提問 如何EF Core模型設置主鍵自增 回答 Microsoft.AspNetCore.Identity.EntityFrameworkCore [Key] [DatabaseGenerated(DatabaseGeneratedOpti

原创 .net core GB2312編碼錯誤

提問 System.NotSupportedException: No data is available for encoding 936 回答 Encoding.RegisterProvider(CodePagesEncodingPro

原创 集合類型如何使用

提問 集合類型如何使用 回答 長度不變使用數組; 集合涉及增刪使用List; 作爲參數使用IEnumable; 作爲返回值參考第一第二條規則;

原创 數組能改變大小嗎

提問 數組能改變大小嗎 回答 能 using System; public class SamplesArray { public static void Main() { // Create and init

原创 如何獲取枚舉名稱

提問 如何獲取枚舉名稱 回答 using System; public class GetNameTest { enum Colors { Red, Green, Blue, Yellow }; enum Styles {

原创 如何優雅地類型轉換和非空判斷

提問 如何優雅地類型轉換和非空判斷 回答 使用模式匹配 😥 BAD Bytes2ValueAttribute attr = (Bytes2ValueAttribute) Attribute.GetCustomAttribute(p, ty

原创 變量初始化方式

提問 如何初始化字段 回答 使用構造函數初始化字段; 不要使用函數初始化字段; 不要使用函數初始化字段; 不要使用函數初始化字段;

原创 多個泛型如何設置約束

提問 多個泛型如何設置約束 回答 public abstract class HandleBase<Req,Ack> where Req:RequestInfoBase where Ack : AckInfoBase 補充 泛型優點 避免

原创 Serilog實戰

提問 快速上手Serilog步驟 回答 引用 Serilog.Sinks.Async Serilog.Sinks.File Serilog.Sinks.Console 2.配置 appsetting.sjon 加入如下項 "Seri

原创 整潔代碼格式

提問 整潔代碼格式如何實現 回答 一個文件行數不超過1屏; 一行代碼字符數不會超過IDE寬度; 嵌套層深不超過2; 條件判斷/if裏只有一行; 循環for/foreach/裏只有一行; 不要嵌套異常; if裏不要寫表達式;

原创 什麼是枚舉標誌

提問 回答 C#中的標誌枚舉 標誌枚舉在聲明枚舉前加[flag] 枚舉值一般用2的N次方(1 2 4 8......) 不能(1 2 3)因爲標誌每組可以自由組合 1+2=3 就衝突了 下面將其十進制轉化成爲二進制說明就可以明白點 [Fla

原创 代碼整潔之道-註釋

提問 代碼整潔之道-註釋該怎麼寫 回答 WebApi接口寫註釋 實體寫註釋,標記example 方法不超過100行,自描述

原创 WebApi xUnit實戰

提問 如何順利開始第一個xUnit,有哪些點需要注意 回答 Mock的接口,假如是類則方法爲Vitual; Mock類注意構造函數的Mock,不要只Mock無參的; WebAPI獲取Action的值需要通過as轉換as OkObjectR

原创 如何使用ASP.NET Core 中的響應緩存中間件

提問 ASP.NET Core 中的響應緩存中間件 回答 緩存條件 請求必鬚生成帶有 200 (OK) 狀態代碼的服務器響應。 請求方法必須是 GET 或 HEAD。 響應緩存中間件必須放置在需要緩存的中間件之前。 有關詳細信息,請參閱