首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JSonNet对象序列化

JSonNet对象序列化
EN

Stack Overflow用户
提问于 2013-04-20 15:24:47
回答 1查看 169关注 0票数 0

我在序列化中使用了"Newtonsoft.Json“。在我的应用程序中有类“学生”和“系”,当我序列化班级学生时,我必须在json代码中获得“学院”对象。

这个类学生,我想将其序列化为json.

代码语言:javascript
复制
public class Student 
            {
                public int ID { get; set; }
              **public Faculty Faculty { get; set; }
                public double AVG { get; set; }
                public DateTime DateOfBirth { get; set; }
                public string EducationInfo { get; set; }
                public string FatherName { get; set; }
                public string FirstName { get; set; }
                public string LastName { get; set; }
                public string MotherName { get; set; }
                public string Password { get; set; }
                public string PersonalInfo { get; set; }
}

班级内部教师学生:

代码语言:javascript
复制
public class Faculty
         {
            public int id { get; set; }
            public string name { get; set; }
            public Student[] student { get; set; }
         }

序列化后的代码:

代码语言:javascript
复制
{
      "ID": 24,
      "Faculty": {
        "id": 0,
        "name": "engen",
        "student": null 
                 },
      "AVG": 3.0,
      "DateOfBirth": "1990-02-02T00:00:00",
      "EducationInfo": "GOOD",
      "FatherName": "EEWF",
      "FirstName": "FFEWR",
      "LastName": "ERF",
      "MotherName": "ERF",
      "Password": "e2DW",
      "PersonalInfo": "ERF",
     }

如何转换最后的代码来序列化同样的,我要的是显示学院而不是对象,我只想要显示名称。

代码语言:javascript
复制
   {
      "ID": 24,
      "Faculty": "engen",
      "AVG": 3.0,
      "DateOfBirth": "1990-02-02T00:00:00",
      "EducationInfo": "GOOD",
      "FatherName": "EEWF",
      "FirstName": "FFEWR",
      "LastName": "ERF",
      "MotherName": "ERF",
      "Password": "e2DW",
      "PersonalInfo": "ERF",
     }
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-04-20 15:29:16

处理此问题的一种方法是使用Json.Net属性属性

试试这个:

代码语言:javascript
复制
[JsonIgnore]
public Faculty Faculty { get; set; }

[JsonProperty("Faculty")]
public string FacultyName { get { return Faculty.Name; } }

这样做的缺点是无法将JSON反序列化回.NET对象。但是你会得到你想要的输出。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16121998

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档