MVC 5 Json 직렬 화 시 발생 하 는 대소 문자 문제 및 해결 방법

3912 단어 MVC
최근 한 MVC 5 프로젝트 에서 문제 가 발생 했 습 니 다. C \ # 인 코딩 규범 에 규정된 속성의 이니셜 은 대문자 (대부분의 회 사 는 이런 인 코딩 스타일 을 사용 합 니 다) 이지 만 다른 시스템 에서 받 은 json 대상 의 속성 은 소문 자 (대부분의 회 사 는 이런 인 코딩 스타일 을 사용 합 니 다) 입 니 다. 어떻게 해 야 편리 하 게 전환 을 완성 할 수 있 습 니까?
가장 멍청 한 방법 은 소문 자 라 는 모든 속성 을 정의 한 ViewModel 클래스 를 정의 한 다음 대소 문자 속성 변환 을 완성 하 는 방법 입 니 다.
      좀 더 우아 한 방법 없 나 요?
MVC 5 에서 기본 json 직렬 화 구성 요 소 는 Newtonsoft. JSon 입 니 다.어떻게 해야만 뉴턴 소프트 제 이 슨 이 직렬 화 할 때 자동 으로 대문자 를 소문 자로 바 꾸 고, 반 직렬 화 할 때 자동 으로 대문자 로 바 꿀 수 있 습 니까?문 서 를 찾 아 보 니 JSonProperty Atrribute 를 사용 하면 됩 니 다.JSonProperty Atrribute 를 사용 하려 면 네 임 스페이스 Newtonsoft. JSon 을 참조 해 야 합 니 다.다음 과 같다. 1 using Newtonsoft.Json; 2 3   /// 4   /// 5   /// 6 public class Product 7 { 8 /// 9 /// Id 10 /// 11 [JsonProperty("productId")] 12 public string ProductId { set; get; } 13 14 15 /// 16 /// 17 /// 18 [JsonProperty("productName")] 19 public string ProductName { set; get; } 20 }
 
코드 에서 우 리 는 [JSonProperty ("produtId")] 를 사용 하여 ProductId 속성 을 수식 하고, produtId 는 소문 자 이 며, ProductId 는 대문자 입 니 다.서열 화 와 반 서열 화 할 때 뉴턴 소프트 제 이 슨 은 자동 으로 전환 된다.

좋은 웹페이지 즐겨찾기