이 글은 기계 번역의 미러 문서이며, 원본 기사로 바로 이동하려면 여기를 클릭해 주세요.

보기: 3045|회답: 0

[출처] .NET/C#은 Refit을 사용하여 enum 매개변수 enum 타입 오류를 요청합니다

[링크 복사]
게시됨 2023. 7. 23. 오후 3:13:05 | | | |
요구사항: 매개변수에 열거 유형이 있으면 인터페이스는 "400 Bad Request" 오류를 반환합니다. Refit은 기본적으로 객체 내 열거를 문자열로 변환하므로 인터페이스는 문자열을 열거 오류로 변환할 수 없기 때문입니다.

{
    "type": "https://tools.ietf.org/html/rfc7231#section-6.5.1",
    "제목": "하나 이상의 검증 오류가 발생했습니다."
    "현황": 400,
    "traceId": "00-3aef79a91ce9c411883953c9aaccb48a-68917b547ba8a2e5-00",
    "오류": {
        "요청": [
            "요구 필드가 필요합니다."
        ],
        "$.languagePermissions": [
            "JSON 값은 LanguagePermissionsEnum으로 변환할 수 없었습니다. 경로: $.languagePermissions | 라인 번호: 0 | BytePositionInLine: 145."
        ]
    }
}



공식적인 설명은 열거를 문자열로 변환하는 이유가 바로 그 이유입니다가독성을 높이고 매개변수 내용 정보 읽기 용이하게 합니다。 참조:하이퍼링크 로그인이 보입니다.

기본 동작은 열거자를 문자열로 직렬화하는 것으로, 직렬라이저에 직접 설정을 제공함으로써 이를 변경할 수 있습니다:하이퍼링크 로그인이 보입니다.



그래서 커스텀 리핏 설정을 전달하고 기본 설정을 사용하지 않고 삭제합니다JsonStringEnumConverter변환기는 괜찮고, 코드는 다음과 같습니다:

용액:하이퍼링크 로그인이 보입니다.
(끝)




이전의:.NET/C# 경량 Mapster 객체 매핑 프레임워크
다음:.NET/C# 간단 사용 폴리 튜토리얼
면책 조항:
Code Farmer Network에서 발행하는 모든 소프트웨어, 프로그래밍 자료 또는 기사는 학습 및 연구 목적으로만 사용됩니다; 위 내용은 상업적 또는 불법적인 목적으로 사용되지 않으며, 그렇지 않으면 모든 책임이 사용자에게 부담됩니다. 이 사이트의 정보는 인터넷에서 가져온 것이며, 저작권 분쟁은 이 사이트와는 관련이 없습니다. 위 내용은 다운로드 후 24시간 이내에 컴퓨터에서 완전히 삭제해야 합니다. 프로그램이 마음에 드신다면, 진짜 소프트웨어를 지원하고, 등록을 구매하며, 더 나은 진짜 서비스를 받아주세요. 침해가 있을 경우 이메일로 연락해 주시기 바랍니다.

Mail To:help@itsvse.com