gpt4 book ai didi

c# - 具有属性名称和值的映射对象

转载 作者:太空宇宙 更新时间:2023-11-03 21:19:22 25 4
gpt4 key购买 nike

我有课

public class Foo 
{
public string Id { get; set; }
public string Name { get; set; }
public string Email { get; set; }
}

我想将对象转换为通用对象

{
"properties": {
"id" : "1234",
"name": "John Doe",
"email" : "john.doe@mail.com"
}
}

我想将类实例转换为属性根据类动态变化的结构。这可以用 Automapper 实现吗?

最佳答案

似乎您想序列化/反序列化到 JSON 或从 JSON 反序列化。这种情况可以引用Newtonsoft.Json并使用不依赖于任何特定类的 JsonConvert.SerializeObject/JsonConvert.DeserializeObject 通用方法:

反序列化(从字符串到类实例):

var foo = JsonConvert.DeserializeObject<Foo>(jsonString);

序列化(从类实例到字符串):

var stringValue = JsonConvert.SerializeObject(foo)

多一点(映射)

您可能还想用一些属性来装饰您的类以指定映射:

[DataContract]
public class Foo
{
[DataMember(Name = "id")]
public string Id {get;set;}

[DataMember(Name = "name")]
public string Name {get;set;}

[DataMember(Name = "email")]
public string Email {get;set;}
}

关于c# - 具有属性名称和值的映射对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31847424/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com