随笔分类 - C#基础
摘要:要给项目文件重命名,你可以按照以下步骤操作 在Visual Studio中打开项目,选择要重命名的项目,在解决方案资源管理器中右键单击它,然后选择“重命名”。 输入新的项目名称,然后保存解决方案并关闭Visual Studio。 在资源管理器中,找到包含项目的文件夹,并将其重命名为新的项目名称。 在
阅读全文
摘要:很多时候测试方法的时候需要创建一些测试数据,平时我都是自己手写的, 今天发现了一个可以创建模拟数据的轮子Bogus,下面看看怎么使用的 首先引用Nuget包 github : bchavez/Bogus: A simple fake data generator for C#, F#, and VB
阅读全文
摘要:第一种 Nuget打包 快速入门:使用 Visual Studio 创建和发布 NuGet 包(仅限 .NET Standard 和 Windows) | Microsoft Learn NuGet 私有库服务搭建 - 鲜橙rqc - 博客园 (cnblogs.com) Visual Studio巧
阅读全文
摘要:没用过数据库,对这个扩展方法不是很理解,今天记录一下 大概意思就是在A,B两个序列中,根据条件查找相同的项 Msdn官方介绍 Join 操作(C#) | Microsoft Docs Join 和 GroupJoin是连接运算符。 Join 类似于SQL的内部连接。它返回一个新集合,其中包含两个键匹
阅读全文
摘要:现在有这么一个需求: 生成随机长度的一个字符串,要求可以包含大写字母或者小写字母,或者数字,这三种排列组合都可以 效果如下 后台代码 1 using System; 2 using System.Collections.Generic; 3 using System.Collections.Obje
阅读全文
摘要:逻辑非运算符:! 如果操作数的计算结果为 false,它生成 true;如果操作数的计算结果为 true,它生成 false. 对结果取反 逻辑与运算符:& 如果 x 和 y 的计算结果都为 true,则 x & y 的结果为 true。 否则,结果为 false。 即任意有一个操作数为false,
阅读全文
摘要:在直接序列化只读属性的时候,由于该属性没有 setter ,在反序列化时⽆法给其赋值,所以该属性将不被序列化(个⼈理解);⽽且,如果序列化的⽬的如果只是保存,反序列化之后只读属性的值可以通过 get ⾥⾯的代码⾃动获得,序列化也没有意义; 总之,我们要序列化只读属性 (另外一个方法就是实现IXmlS
阅读全文
摘要:GetHashCode基于适合哈希算法和诸如哈希表的数据结构的当前实例返回一个值。 两个相等的同类型对象必须返回相同的哈希代码,才能确保以下类型的实例正确运行: HashTable System.Collections.SortedList Dictionary SortDictionary Sor
阅读全文
摘要:SystemException 其他用户可处理的异常的基本类 ArgumentException 方法的参数是非法的 ArgumentNullException 一个空参数传递给方法,该方法不能接受该参数 ArgumentOutOfRangeException 参数值超出范围 ArithmeticE
阅读全文
摘要:首先准备两个类 1 private class Person 2 { 3 public int CityID { set; get; } 4 5 public string Name { set; get; } 6 } 7 8 private class City 9 { 10 public int
阅读全文
摘要:有时候对于一个列表想分组的同时把其他的列表一起分组 1 var breaked = new int[] { 2, 2, 3, 3, 0, 6 };//注意列表元素的数量并不相同,只会使用短的那一个列表 2 var str = new string[] { "a", "b", "c", "d", "e
阅读全文
摘要:1 var range = Enumerable.Range(1, 50); 2 var breaked = new int[] { 0, 20, 30, 40, 50 }; 3 var groupings = range.GroupBy(item => breaked.First(ceiling
阅读全文
摘要:显式转换implicit关键字告诉编译器,在源代码中不必做显示的转型就可以产生调用转换操作符方法的代码. 隐式转换implicit关键字告诉编译器只有当源代码中指定了显示的转型时,才产生调用转换操作符方法的代码. 隐式转换可能在各种情况下发生,包括功能成员调用,表达式执行和赋值。 显式转换可以在强制
阅读全文
摘要:使用 SequenceEqual扩展方法来比较两个序列是否完全一致 有一个重载方法 需要传入一个实现 IEqualityComparer<T>接口的对象 具体查看微软官方文档 Enumerable.SequenceEqual 方法 (System.Linq) | Microsoft Docs
阅读全文
摘要:ICollectionView有一个Filter属性,接受一个Predicate<object>的委托 来生成过滤视图 准备一个实体数据类 1 /// <summary> 2 /// 测试数据类 3 /// </summary> 4 public class UserDataProxy : Dyna
阅读全文
摘要:版权声明:本文为CSDN博主「移山小斗车」的原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/zhuqinfeng/article/details/70168337 1 一、Expression中的操作运算符 2 成
阅读全文
摘要:记录一下,以防遗忘 1 /// <summary> 2 /// 饿汉式声明 静态构造函数执行时就立即实例化 3 /// </summary> 4 public class SingleInstance 5 { 6 /// <summary> 7 /// 私有构造函数 8 /// </summary>
阅读全文
摘要:准备一个泛型类和一个已经有具体类型的属性 1 public class PropertyClass<T1, T2> 2 { 3 } 4 5 public class Test 6 { 7 public PropertyClass<string, int> P { get; set; } 8 } 准备
阅读全文
摘要:准备一个类 1 public class MethodCLass 2 { 3 public void Method() 4 { 5 Console.WriteLine($"无参方法"); 6 return; 7 } 8 9 public void Method(int arg) 10 { 11 Co
阅读全文
摘要:记忆一下,以防遗忘 定义一个接口 1 public interface IPropertyValidation 2 { 3 /// <summary> 4 /// 验证失败后的错误信息 5 /// </summary> 6 string ErrorInfo { get; set; } 7 8 ///
阅读全文