У меня есть следующая конечная точка:
public List<SubBranch> Get(GetSubBranch request)
{
SubBranch subBranch = new SubBranch();
subBranch.BranchId = 1;
subBranch.Addresses = new List<SubBranchAddress>();
subBranch.Addresses.Add(new SubBranchAddress { AddressType = AddressType.Postal, City = "A" });
subBranch.Addresses.Add(new SubBranchAddress { AddressType = AddressType.Test, City = "B" });
subBranch.Addresses.Add(new SubBranchAddress { AddressType = AddressType.Street, City = "C" });
return new List<SubBranch> { subBranch };
}
Вот модель:
public class SubBranch
{
public int BranchId { get; set; }
public List<SubBranchAddress> Addresses { get; set; }
}
public class SubBranchAddress
{
public string City { get; set; }
public AddressType AddressType { get; set; }
}
public enum AddressType
{
Test,
Street,
Postal
}
Это обеспечивает следующий ответ JSON:
[
{
"BranchId": 1,
"Addresses": [
{
"City": "A",
"AddressType": "Postal"
},
{
"City": "B"
},
{
"City": "C",
"AddressType": "Street"
}
]
}
]
Каквы можете видеть, что первое значение в перечислении AddressType
не вводится.Я ожидаю, что "City": "B"
будет иметь "AddressType": "Test"
ниже.Я играл с разным числом значений enum в разных порядках, и каждый раз, когда первое значение никогда не появляется.
Почему это так и как я могу это исправить?