Hãy tưởng tượng một hành động điều khiển đơn giản IEnumerable<BaseType> Get()
. Nó trả về một liệt kê các kiểu khác nhau bắt nguồn từ BaseType.Thừa kế và trình định dạng JSON của ASP.NET Web API
Khi khách hàng yêu cầu XML, kết quả là một cái gì đó như thế này:
<ArrayOfBaseType>
<BaseType i:type="DerivedType1"><A>value</A></BaseType>
<BaseType i:type="DerivedType2"><B>value</B></BaseType>
<BaseType i:type="DerivedType3"><C>value</C></BaseType>
</ArrayOfBaseType>
Như bạn có thể thấy, các loại lớp có nguồn gốc được truyền đi trong các thuộc tính i:type
.
Nếu khách hàng yêu cầu JSON Tuy nhiên, thông tin này là mất tích:
[
{"A":"value"},
{"B":"value"},
{"C":"value"}
]
Làm thế nào để sửa lỗi này?
@downvoter: Không có giải thích, downvote của bạn không đáng giá vì tôi không thể cải thiện câu hỏi mà không biết điều gì không rõ ràng. –