2015-02-17 15 views
0

Я пишу приложение Windows Phone 8.1 (WINRT). Я должен позвонить HTTPHandlerMethod метод принимает три параметра. Я передаю Адрес сервера API как строку, JsonString для отправки на сервер в виде строки, а также мне нужно отправить имя класса в HTTPHandlerMethod также в качестве третьего параметра. Как отправить имя класса? Я на самом деле нужно использовать имя класса внутри этого метода в JSON десериализации:Передать имя класса методу

JsonConvert.DeserializeObject (JSonData_Recieved, CLASS NAME ЗДЕСЬ);

public async void HTTPHandlerMethod(string AddressPath, 
    string JSonData_ToSend, **WHAT THIRD PARAMETER TO WRITE HERE??**) 
{ 
    Object resObject = null; 
    HttpBaseProtocolFilter HttpBaseProtocolFilterObject = new HttpBaseProtocolFilter(); 
    HttpClient HttpClientObject = new HttpClient(HttpBaseProtocolFilterObject); 

    string CompleteAddress = singletonInstance.APIServer + AddressPath; 
    Uri UriObject = new Uri(CompleteAddress); 
    HttpRequestMessage HttpRequestMessageObject = 
     new HttpRequestMessage(HttpMethod.Post, UriObject); 

    HttpRequestMessageObject.Content = new HttpStringContent(JSonData_ToSend, 
      Windows.Storage.Streams.UnicodeEncoding.Utf8, "application/json"); 

    try 
    { 
     HttpResponseMessage HttpResponseMessageObject = 
       await HttpClientObject.SendRequestAsync(HttpRequestMessageObject, 
        HttpCompletionOption.ResponseContentRead); 

     if (HttpResponseMessageObject.IsSuccessStatusCode) //If 2xx success is recieved 
     { 
      string JSonData_Recieved = 
      await HttpResponseMessageObject.Content.ReadAsStringAsync(); 
     resObject = JsonConvert.DeserializeObject(JSonData_Recieved,resType); 
     } 
    } 
    catch { } 
    } 
} 

Какие изменения я должен сделать к этому методу HTTPHandlerMethod? и как это назвать?

+0

Контекст - это все. _What_ имя класса, которое вы хотите передать? Какое отношение имеет вызывающий абонент к рассматриваемому классу? Почему вы не можете просто записать имя как литерал? Не могли бы вы сделать метод универсальным классом и использовать параметр type _instead of_, передающий имя класса? Пожалуйста, укажите [пример _minimal_, _complete_ code] (http://stackoverflow.com/help/mcve), который точно и четко показывает, что вы просите. –

+3

Что вы собираетесь делать с именем класса? Я думаю, вам нужен общий тип параметра. –

+1

@SriramSakthivel Похоже, что OP хочет вызвать [JsonConvert.DeserializeObject] (http://www.newtonsoft.com/json/help/html/M_Newtonsoft_Json_JsonConvert_DeserializeObject_2.htm), который принимает 'Type' как второй параметр ... Не совсем понятно, что точно вызывает проблему для OP, поэтому ... –

ответ

0
public async void HTTPHandlerMethod(string AddressPath, 
    string JSonData_ToSend, Type classname) 
{ 

} 
Смежные вопросы