2014-06-24 5 views
2

그래서 내가 할 수있을 자신을 수행 할 작업이 그것을 잘 작동 날카로운 물체 c를 어떤 JSON 변환 방법 (코드의 두 번째 블록) 하지만C# 역 직렬화 JSON

이 어떤 종류의 방법에 그녀는

//not real code 

public static object JSONToObj(string i_json, typeof(Home)) //will return an Home object 

//not real code 

//real code 

public static object JSONToObj(string i_json) 
{ 
    serializer = new JavaScriptSerializer(); 
    object io_obj = serializer.Deserialize<object>(i_json); 

    return io_obj; 
} 

//real code 

답변

3
public static T JSONToObj<T>(string i_json) 
{ 
    var serializer = new JavaScriptSerializer(); 
    T io_obj = serializer.Deserialize<T>(i_json); 

    return io_obj; 
} 

으로 캐스팅해야 할 객체의 유형 방법을 말해 당신은 다음과 같이 호출 할 수 있습니다 :

Home h = JSONToObj<Home>(json); 
+0

이 방법을 어떻게 호출해야합니까? – user1310492

+0

업데이트 된 답변보기 – dotnetom

+0

@dotnetom 형식을 역 직렬화 할 수있는 형식으로 'T : new()'제약 조건을 추가해야합니다. –