.Net Core Record 类型

public class Person {

public string id {get;init;}

public string code {get;init;}

public string name {get;init;}

}

//Person 属性不可单独赋值,相当于使用record定义

public record Person string id,string code,string name)

//record类型定义对象

1、定义的属性只能在初始化时赋值

2、重写了Equals等对象类型的比较方法,在两个不同引用的record对象的内容相同时,对两者进行==比较,判断两者相等为true

3、重写了ToString()方法,便于输出属性内容。还重写了GetHashCode()Equals()方法。

复制代码
public record   User(string code,string name);

User u1 = new User("101", "yxs");
User u2 = new User("101", "yxs");

//with的使用
//with表达式,用于拷贝原有对象,并对特定属性进行修改
User u3 = u2 with {code="", name = "name2"};


Console.WriteLine(u1.ToString());//输出对象值
Console.WriteLine(u1.Equals(u2));//true
Console.ReadLine();
相关推荐
编程乐趣1 天前
基于.Net Core开发的GraphQL开源项目
后端·.netcore·graphql
吾门1 天前
机器视觉开发教程——C#如何封装海康工业相机SDK调用OpenCV/YOLO/VisionPro/Halcon算法
图像处理·opencv·计算机视觉·c#·.net·.netcore·visual studio
超级无敌永恒暴龙战士2 天前
SpringMVC-执行流程
spring·servlet·springmvc
麓殇⊙2 天前
Servlet--快速入门及HTTP概述
网络协议·http·servlet
Kookoos3 天前
ABP vNext + EF Core 实战性能调优指南
数据库·后端·c#·.net·.netcore
[email protected]4 天前
ASP.NET Core 中实现 Markdown 渲染中间件
后端·中间件·asp.net·.netcore
吃瓜日常4 天前
ABP项目发布到IIS流程
c#·.netcore
默心5 天前
jenkins配置多nexus仓库多maven版本
servlet·jenkins·maven
飞鸟吟5 天前
【C++】类和对象(一)
c++·servlet
[email protected]6 天前
ASP.NET Core 中间件
后端·中间件·asp.net·.netcore