mã bên dưới cung cấp cho bạn json = '{"Tên": "Kiểm tra", "Id": 1, "MyEnum": 3}', khi bạn có giá trị không null.
public enum SerializeObjTestClassEnum
{
one = 1, two, three, four
}
[Serializable]
public class SerializeObjTestClass
{
public string Name { get; set; }
public int Id { get; set; }
public SerializeObjTestClassEnum MyEnum{ get; set; }
}
public void SerializeObject_Test_Basic_Object()
{
var obj = new SerializeObjTestClass { Id = 1, Name = "Test", MyEnum = SerializeObjTestClassEnum.three };
var json = (new JavaScriptSerializer()).Serialize(obj);
}
mã này mang đến cho bạn json = '{ "Tên": "Test", "Id": 1, "MyEnum": 0}'
var obj = new SerializeObjTestClass { Id = 1, Name = "Test" };
Thông báo như thế nào enum, khi không được thiết lập, được tuần tự hóa thành 0, trong khi enum chính nó bắt đầu ở 1. Vì vậy, đây là cách bạn mã có thể biết một giá trị NULL đã được sử dụng cho enum.
nếu bạn muốn json trông giống như '{"Name": "Test", "Id": 1, "MyEnum": null}', thì bạn sẽ cần giả mạo nó bằng cách sử dụng trình bao bọc lớp quanh Enum.
Câu hỏi này có được trả lời theo ý thích của bạn không? – DMCS