반응형
오브젝트에 대한 JToken 콘텐츠의 시리얼 해제
오브젝트에 대한 JToken 콘텐츠의 시리얼화를 해제한다(User
어떻게 하면 좋을까요?
다음은 json 문자열입니다.
string json = @"[{""UserId"":0,""Username"":""jj.stranger"",""FirstName"":""JJ"",""LastName"":""stranger""}]";
이것은 api 파라미터로 송신됩니다.JToken
.
사용자 클래스:
public class user
{
public int UserId {get; set;}
public string Username {get; set;}
public string FirstName {get; set;}
public string LastName {get; set;}
}
Web API 메서드:
public IHttpActionResult Post([FromBody]JToken users)
{
UserModel.SaveUser(users);
//...
}
Salesforce에서의 API 호출:
string json = '[{"UserId":0,"Username":"jj.stranger","FirstName":"JJ","LastName":"stranger"}]';
HttpRequest req = new HttpRequest();
HttpResponse res = new HttpResponse();
Http http = new Http();
req.setEndpoint('test.com/api/UserManagement');
req.setMethod('POST');
req.setBody(json);
req.setHeader('Content-Type', 'application/json');
try {
res = http.send(req);
} catch(System.CalloutException e) {
System.debug('Callout error:' + e);
}
System.debug(res.getBody());
JToken을 사용할 수 있습니다.ToObject 범용 메서드.http://www.nudoq.org/ #!/Packages/Newtonsoft.Json/Newtonsoft.Json/JToken/M/ToObject(T)
서버 API 코드:
public void Test(JToken users)
{
var usersArray = users.ToObject<User[]>();
}
여기 제가 사용하는 클라이언트 코드가 있습니다.
string json = "[{\"UserId\":0,\"Username\":\"jj.stranger\",\"FirstName\":\"JJ\",\"LastName\":\"stranger\"}]";
HttpClient client = new HttpClient();
var result = client.PostAsync(@"http://localhost:50577/api/values/test", new StringContent(json, Encoding.UTF8, "application/json")).Result;
개체는 문제 없이 사용자 배열로 변환됩니다.
언급URL : https://stackoverflow.com/questions/28492098/deserializing-jtoken-content-to-an-object
반응형
'programing' 카테고리의 다른 글
Wordpress에서 Ajax를 로드하는 방법 (0) | 2023.03.16 |
---|---|
Wordpress permalink 구조 변경 문제 (0) | 2023.03.16 |
패키지 내의 모든 클래스에서 로깅을 억제하도록 로그백 구성 (0) | 2023.03.16 |
브라우저는 Ajax 요청 후 얼마나 기다려야 합니까? (0) | 2023.03.16 |
서버에서 모델 데이터를 프로그래밍 방식으로 새로고침/갱신하려면 어떻게 해야 합니까? (0) | 2023.03.16 |