当前位置: 首页 > news >正文

常用库的使用net

using Newtonsoft.Json;

public class MyClass

{

    // 这个属性在序列化时会被忽略

    [JsonIgnore]

    public string HiddenProperty { get; set; }

    // 这个属性正常序列化

    public string VisibleProperty { get; set; }

    // 如果需要在反序列化时设置 HiddenProperty 的值,

    // 可以通过一个私有属性来接收 JSON 中的值

    [JsonProperty("HiddenProperty")]

    private string HiddenPropertyForDeserialization

    {

        set => HiddenProperty = value;

    }

}

// 示例用法

var obj = new MyClass

{

    HiddenProperty = "This will be ignored during serialization",

    VisibleProperty = "This will be serialized"

};

// 序列化

string json = JsonConvert.SerializeObject(obj);

Console.WriteLine("Serialized JSON: " + json); // 输出: {"VisibleProperty":"This will be serialized"}

// 反序列化

var deserializedObj = JsonConvert.DeserializeObject<MyClass>("{\"HiddenProperty\":\"This will be deserialized\",\"VisibleProperty\":\"Another value\"}");

Console.WriteLine("HiddenProperty: " + deserializedObj.HiddenProperty); // 输出: This will be deserialized

Console.WriteLine("VisibleProperty: " + deserializedObj.VisibleProperty); // 输出: Another value



bogus 

[Fact]

public async Task BatchAddStaffAsync_WhenCalled_ShouldAddStaffToDatabase()

{

    // Arrange

    var staffs = new Faker<Staff>()

        .RuleFor(u => u.Name, f => f.Person.FullName)

        .RuleFor(u => u.Email, f => f.Person.Email)

        .RuleFor(u => u.Age, f => f.Random.Number(18, 60))

        .RuleFor(u => u.Addresses, f => f.MakeLazy(f.Random.Number(1, 3), () => f.Address.FullAddress()))

        .RuleFor(u => u.Created, f => f.Date.PastOffset())

        .Generate(500);

    // Act

    await _staffRepository.BatchAddStaffAsync(staffs, CancellationToken.None);

    // Assert

    var retrievedStaffs = await _staffRepository.GetAllStaffAsync(CancellationToken.None);

    Assert.NotNull(retrievedStaffs); // 确保 Staff 已成功添加到数据库

    Assert.Equal(500, retrievedStaffs.Count); // 确保正确数量的 Staff 已添加到数据库

    Assert.True(staffs.All(x => retrievedStaffs.Any(_ => x.Id == _.Id)));

}



extended.wpf.toolkit

var pg=new propertygrid()

pg.selectedobject=employee

侧边栏

[Browsable(False)]

隐藏类的某些属性

[Category("Name")]

分类  侧边栏分类一样的

有表单提交功能

✅ 优先使用属性

  • 需要控制访问权限(如只读 { get; })。

  • 需要数据验证(如 set 里检查 value 是否合法)。

  • 需要计算值(如 FullName 由 FirstName + LastName 组成)。

  • 需要兼容数据绑定(如 WPF、ASP.NET MVC)。

❌ 可以使用字段

  • 仅限类内部使用(private 字段)。

  • 性能敏感场景(属性有轻微开销,但通常可忽略)。

http://www.xdnf.cn/news/1020997.html

相关文章:

  • SNN学习(4):真实的生物神经学中神经元和人脑结构学习
  • Java机器学习全攻略:从基础原理到实战案例详解
  • 「Linux中Shell命令」Shell命令基础
  • 异步爬虫---
  • 深入理解 PyTorch:从基础到高级应用
  • openeuler 虚拟机:Nginx 日志分析脚本
  • js 两个数组按照第二个数组的顺序排序
  • MoneyPrinterTurbo根据关键词自动生成视频
  • Windows MySQL8密码忘了解决办法
  • 全新NVIDIA Llama Nemotron Nano视觉语言模型在OCR基准测试中准确率夺冠
  • L1-078 吉老师的回归
  • https 证书链不完整问题解析与解决方案
  • 非本地地址调用摄像头需要https
  • python可视化:从《歌手2025》到同类型节目全面解析
  • MCP(模型上下文协议)——AI生态的“万能插座”
  • 爬百度图片如何解决{“antiFlag“:1,“message“:“Forbid spider access“}
  • 造成服务器宕机的原因都有哪些?
  • 【评测】Qwen3-Embedding与nomic-embed-text的召回效果对比
  • 光谱数据分析的方法有哪些?
  • Linux配置go环境
  • 比特币的运行机制---第2关:比特币的区块与网络
  • 《编译原理》课程作业
  • 09 - TripletAttention模块
  • 百空间成网 可信数据生态如何重塑数字时代生产关系
  • 基于Docker实现frp之snowdreamtech/frps
  • Linux NFS服务器配置
  • 手阳明大肠经之下廉穴
  • goland 的 dug 设置
  • 我会秘书长杨添天带队赴光明食品集团外高桥食品产业园区考察调研
  • 为何京东与蚂蚁集团竞相申请稳定币牌照?