.NET6
xiaososa.
csharp不停进阶中
展开
-
C#关于LiveCharts中文显示乱码的问题
经由群内大佬指点,在这里总结,并不是本人想出的解决办法,但是大家也许可以通过这个方法解决。侧边描述和图表里的描述都会显示乱码,本次解决方案是在MVVM模式下。ViewModel.cs下。原创 2023-06-12 09:45:01 · 2022 阅读 · 3 评论 -
C#中WPF实现依赖注入和MVVM,以及服务定位ServiceLocator
这里有一个优雅的写法,当你写到DataContext="{Binding的时候,先按一下空格,然后写一个逗号,在写Source={StaticResource ServiceLocator}}”,后面就可以自动感知到MainWindowViewModel。好了,这次我们就可以绑定值了,将刚才的控件都修改一下,mode我们选择双向绑定,意味着只要值有变化就会通知前台更改值。这时我们就使用了容器,等待类型注入,此时我们的依赖注入初步就完成了,下面进行添加MVVM模式。原创 2023-03-22 23:12:17 · 4616 阅读 · 1 评论 -
C#实现两个线程交替输出字母数组
c#实现两个线程交替输出字母数组转载 2022-08-25 10:07:25 · 312 阅读 · 0 评论 -
[翻译]C#:tip IsNullOrEmpty 和IsNullOrWhiteSpace有什么区别?
IsNullOrEmpty 和IsNullOrWhiteSpace有什么区别翻译 2022-08-25 10:01:56 · 142 阅读 · 0 评论 -
C# 实现真正的四舍五入
c# 四舍五入原创 2022-06-23 14:00:22 · 4059 阅读 · 0 评论 -
c# Linq Aggregate()累加函数的用法
c# Linq Aggregate原创 2022-06-21 11:23:43 · 1985 阅读 · 0 评论 -
C#-Linq用法Average
Linq Average原创 2022-06-20 09:13:19 · 469 阅读 · 0 评论 -
.net6.0 EFCore 连接 SqlServer的一些问题
EFCore连接SQLServer原创 2022-06-15 09:22:46 · 1877 阅读 · 0 评论 -
.NET 6 新特性 —— Random.Shared
Intro最近微软发了一篇 .NET 6 性能提升的博客文章,里面提到了很多有趣的东西,其中有一个是 Random.Shared这是一个只读的静态属性,并且是一个线程安全的对象,这个东西可以帮助我们简化 Random 对象的使用Before首先我们需要知道 Random 不是线程安全的,所以我们如果要在多线程下用 Random 的话,通常需要考虑线程安全问题既然不是线程安全的,那我们用的时候创建一个就好了,每次都 new 一个,但是这样的话一来代码不够简洁,二来可能会创建比较多的 Ran转载 2022-04-21 11:48:27 · 658 阅读 · 0 评论 -
区域和检索 - 数组可修改 - 线段树的构造
区域和检索 - 数组可修改给你一个数组 nums ,请你完成两类查询。其中一类查询要求 更新 数组 nums 下标对应的值另一类查询要求返回数组 nums 中索引 left 和索引 right 之间( 包含 )的nums元素的 和 ,其中 left <= right实现 NumArray 类:NumArray(int[] nums) 用整数数组 nums 初始化对象void update(int index, int val) 将 nums[index] 的值 更新 为 valint原创 2022-04-14 08:32:34 · 261 阅读 · 0 评论 -
.net最近做题整理的一些语法糖
Linq的Sum() 加和int maxWealth = int.MinValue;foreach (int[] account in accounts) { maxWealth = Math.Max(maxWealth, account.Sum());}null! 告诉编译器这个null不是null!!!!//例子1namespace ContosoPizza.Models{ public partial class Coupon { public原创 2022-04-14 08:29:03 · 747 阅读 · 0 评论 -
C#中IS和AS关键字的用法
在程序中,进行类型转换是常见的事,C#支持基本的强制类型转换方法,例如:Object obj1 = new NewType();NewType newValue = (NewType)obj1;这样强制转换的时候,这个过程是不安全的,因此需要用try-catch语句进行保护,这样一来,比较安全的代码方式应如下所示:Object obj1 = new NewType();NewType newValue = null;try{ newValue = (NewType)obj1;}cat原创 2022-03-18 09:00:26 · 295 阅读 · 0 评论 -
C# Linq 交集、并集、差集、去重
其实只要明白 LINQ查询操作符的Distinct、Union、Concat、Intersect、Except、Skip、Take、SkipWhile、TakeWhile、Single、SingleOrDefault、Reverse、SelectMany,Aggregate()的使用,一些简单的操作就可以了。合并两个数组,并去掉重复元素,然后排序(C#)List<int> numbers1 = new List<int>() { 5, 4, 1, 3, 9, 8, 6, 7, 1转载 2022-02-16 08:53:58 · 1018 阅读 · 0 评论 -
DoNet6新特性 PriorityQueue 优先队列终于来啦~
c#终于迎来优先队列了 不用我们自己排序了PriorityQueue<string, int> priorityQueue = new PriorityQueue<string, int>();for (int i = 0; i < 10; i++){ int num = new Random().Next(1, 1000); priorityQueue.Enqueue(num.ToString(), num);}string v = priori原创 2022-02-11 23:13:02 · 257 阅读 · 0 评论 -
DoNet6新特性 Enumerable.Chunk()
.net6新增了一个语法糖 对于分块读取,断点续传,大文件分段读取,我们可以直接用一句话就可以代替繁琐的操作比如我们有1005页书 要按每10页分一组 我们可以进行一下操作static void Main(string[] args){ //新特性一句话搞定 List<int[]> list = Enumerable.Range(1, 1005).Chunk(10).ToList(); //以前的方法 List<int> list1 = Enu原创 2022-02-10 20:06:36 · 705 阅读 · 0 评论