随笔分类 -  .NET Standard

摘要:提问 C# 如何时间戳转时间 回答 string id = TimeZoneInfo.Local.Id; DateTime start = new DateTime(1970, 1, 1) + TimeZoneInfo.Local.GetUtcOffset(DateTime.Now); DateTi 阅读全文
posted @ 2024-04-01 10:08 东百牧码人 阅读(85) 评论(0) 推荐(0)
摘要:提问 如何避免任务重复执行 回答 public readonly SemaphoreSlim semaphore = new(1); semaphore..Wait(); //do something ... //做完了 semaphore.Release(); 参考 https://learn.m 阅读全文
posted @ 2024-03-19 15:20 东百牧码人 阅读(10) 评论(0) 推荐(0)
摘要:提问 如何获取枚举值 回答 //获取枚举值 var value=Convert.ToInt32(DeviceTypeEnum); //获取枚举的10进制 value.ToString("d"); //获取枚举的16进制 value.ToString("X"); 示例 public enum Devi 阅读全文
posted @ 2023-10-17 09:17 东百牧码人 阅读(51) 评论(0) 推荐(0)
摘要:提问 如何EF Core模型设置主键自增 回答 Microsoft.AspNetCore.Identity.EntityFrameworkCore [Key] [DatabaseGenerated(DatabaseGeneratedOption.Identity)] public int ID { 阅读全文
posted @ 2023-10-08 09:21 东百牧码人 阅读(474) 评论(0) 推荐(0)
摘要:提问 System.NotSupportedException: No data is available for encoding 936 回答 Encoding.RegisterProvider(CodePagesEncodingProvider.Instance); 示例 中文编码解析 Enc 阅读全文
posted @ 2023-10-07 11:18 东百牧码人 阅读(77) 评论(0) 推荐(0)
摘要:提问 集合类型如何使用 回答 长度不变使用数组; 集合涉及增删使用List; 作为参数使用IEnumable; 作为返回值参考第一第二条规则; 阅读全文
posted @ 2023-10-07 09:15 东百牧码人 阅读(6) 评论(0) 推荐(0)
摘要:提问 数组能改变大小吗 回答 能 using System; public class SamplesArray { public static void Main() { // Create and initialize a new string array. String[] myArr = { 阅读全文
posted @ 2023-09-28 16:07 东百牧码人 阅读(15) 评论(0) 推荐(0)
摘要:提问 如何获取枚举名称 回答 using System; public class GetNameTest { enum Colors { Red, Green, Blue, Yellow }; enum Styles { Plaid, Striped, Tartan, Corduroy }; pu 阅读全文
posted @ 2023-09-28 16:04 东百牧码人 阅读(41) 评论(0) 推荐(0)
摘要:提问 如何优雅地类型转换和非空判断 回答 使用模式匹配 😥 BAD Bytes2ValueAttribute attr = (Bytes2ValueAttribute) Attribute.GetCustomAttribute(p, typeof(Bytes2ValueAttribute)); i 阅读全文
posted @ 2023-09-28 09:28 东百牧码人 阅读(17) 评论(0) 推荐(0)
摘要:提问 快速上手Serilog步骤 回答 引用 Serilog.Sinks.Async Serilog.Sinks.File Serilog.Sinks.Console 2.配置 appsetting.sjon 加入如下项 "Serilog": { "MinimumLevel": { "Default 阅读全文
posted @ 2023-09-19 13:32 东百牧码人 阅读(47) 评论(0) 推荐(0)
摘要:## 提问 如何顺利开始第一个xUnit,有哪些点需要注意 ## 回答 1. Mock的接口,假如是类则方法为Vitual; 2. Mock类注意构造函数的Mock,不要只Mock无参的; 3. WebAPI获取Action的值需要通过as转换as OkObjectResult; 4. 无关联的直接 阅读全文
posted @ 2023-09-01 15:39 东百牧码人 阅读(16) 评论(0) 推荐(0)
摘要:## 提问 C#如何生成密钥 ## 回答 ``` Aes aes = Aes.Create(); SecurityKey = Convert.ToBase64String(aes.Key); ``` ## 参考 https://learn.microsoft.com/zh-cn/dotnet/sta 阅读全文
posted @ 2023-06-07 16:56 东百牧码人 阅读(279) 评论(0) 推荐(0)
摘要:提问 属性与字段的区别 回答 公开属性使用字段代替; 私有成员使用私有字段; 属性可以有更精细化控制 参考 阅读全文
posted @ 2023-04-18 08:46 东百牧码人 阅读(14) 评论(0) 推荐(0)
摘要:提问 C# 如何获取下个月 回答 int year=2022; int month=10; new DateTime(year, trace.Month, 1, 0, 0, 0, 0).AddMonths(1); 千万不要,因为在month=12时直接报错 int year=2022; int mo 阅读全文
posted @ 2023-04-13 15:26 东百牧码人 阅读(136) 评论(0) 推荐(0)
摘要:提问 C# Channel有哪些技巧 回答 判断管道中是否还有任务 return _channel.Reader.Count > 0; 结合Channel.CreateUnbounded (无边界管道)可实现整体任务缓存,避免重复写入 慎用ChannelWriter.Complete 这会造成管道关 阅读全文
posted @ 2023-04-13 09:56 东百牧码人 阅读(112) 评论(0) 推荐(0)
摘要:提问 线程中的终极异常处理处理 回答 为了异常阻塞主线程是不值得的 使用事件通知方式,这样不会阻塞主线程 捕捉AggregateException 阅读全文
posted @ 2023-04-11 08:54 东百牧码人 阅读(28) 评论(0) 推荐(0)
摘要:提问 如何写列表example注释 回答 使用[] 示例 /// <summary> /// 集合 /// </summary> /// <example>["asdfasdfeadfadf"]</example> public List<string>? Orders{ get; set; } 阅读全文
posted @ 2023-04-10 13:26 东百牧码人 阅读(19) 评论(0) 推荐(0)
摘要:提问 如何使用PLINQ 回答 在集合上应用AsParallel(); 假如顺序很重要则增加AsOrdered() 参考 阅读全文
posted @ 2023-04-07 08:45 东百牧码人 阅读(13) 评论(0) 推荐(0)
摘要:提问 WebApi接口如何用户名非数字参数验证 回答 [RegularExpression(pattern: @"^\D*$", ErrorMessage = "numeric user names not supported")][FromHeader(Name = "user_name")] s 阅读全文
posted @ 2023-04-06 11:27 东百牧码人 阅读(16) 评论(0) 推荐(0)
摘要:提问 Parallel 会阻塞调用者吗 回答 会 原因 虽然parallel也是基于线程池,但是他也会阻塞调用者 阅读全文
posted @ 2023-04-06 09:19 东百牧码人 阅读(22) 评论(0) 推荐(0)