프로퍼티 : 내가 JSON을 반환 사용하고 API를 컨트롤러 기능 여기
Public Class customer
...
Public ReadOnly Property photoSrc(Optional shape As String = Nothing) As String
Get
Dim srcString = "/Images/User.png"
If shape = "square" Then
srcString = "/Images/UserSquare.png"
End If
Return srcString
End Get
End Property
...
End Class
된다 : 여기
내가에 문제가 특정 속성입니다
인덱싱 된 속성 또는
인덱서이라고합니다. 의도적으로 JSON 직렬화를 위해 Web API에서 사용되는 Json.Net은 index 매개 변수가 선택적 일지라도 색인 된 속성을 직렬화하지 않습니다. (당신은
DefaultContractResolver
클래스의
GetSerializableMembers
방법에 대한
source code에 자신이 볼 수 있습니다.)
는
가장 간단한 해결 방법은 당신이 그것을 원하는 매개 변수 값으로 인덱서를 호출하여 클래스에 대한 별도의 인덱싱되지 않은 속성을 추가하는 것입니다 직렬화 할 때 필요합니다. 원하는 경우 비공개로 설정할 수 있습니다. 만약 그렇다면, serializer가이를 "볼"수 있도록 <JsonProperty>
속성으로 표시하기 만하면됩니다. 또한이 속성을 사용하여 대체 속성을 JSON에서 교체 할 색인 된 속성과 동일한 이름으로 지정할 수 있습니다.
Public Class Customer
...
<JsonProperty("photoSrc")>
Private ReadOnly Property defaultPhotoSrc As String
Get
Return photoSrc()
End Get
End Property
Public ReadOnly Property photoSrc(Optional shape As String = Nothing) As String
Get
Dim srcString = "/Images/User.png"
If shape = "square" Then
srcString = "/Images/UserSquare.png"
End If
Return srcString
End Get
End Property
...
End Class
바이올린 : 그것은 정말 열심히 알 https://dotnetfiddle.net/ffNs9D
정확하게 어떤 문제가 당신이 문제를 –