我有返回String類型的WCF方法。如何處理SOAPPRIMITIVE響應
這是我的輸出
{ 「表1」:[{ 「表名」: 「LoadDistributor」, 「描述」: 「分銷商」, 「MandatoryFlag」: 「1」,「狀態「:」,「優先級」: 「0」},{「TableName」: 「LoadPrice」,「Description」:「Price 」,「MandatoryFlag」:「1」,「Status」: 「 「優先級」:「0」},{「TableName」: 「LoadProduct」,「Description」:「Product 」,「MandatoryFlag」:「1」,「Status」: 「」,「Priority」:「0 「},{」TableName「: 「LoadTradeSchemeDetail」, 「描述」 : 「TradeSchemeDeta」, 「MandatoryFlag」: 「1」, 「狀態」: 「」, 「優先級」: 「0」},{ 「表名」: 「RD.AlternativeProductDetail 「,」Description「 :」AltProdutDetail「,」MandatoryFlag「: 」0「,」Status「:」「,」Priority「: 」0「},{」TableName「: 」RD.AlternativeProductHeader「描述「 :」AltProdutHeader「,」MandatoryFlag「: 」0「,」Status「:」「,」Priority「: 」0「},{」TableName「: 」RD.BatchPriceDetail「,」Description「 「BatchPrice」,「MandatoryFlag」: 「1」,「狀態」:「」,「優先級」: 「0」},{「TableName」: 「RD.Executive」,「Description」: 「Executive」,「MandatoryFlag」: 「1」,「Status」:「」,「Priority」: 「0 「},{」TableName「: 」RD.Route「,」Description「:」Route 「,」MandatoryFlag「:」1「,」Status「: 」「,」Priority「:」0「}, 「TableName」: 「RD.vwRetailer」,「Description」: 「Retailer」,「MandatoryFlag」: 「1」,「Status」:「」,「Priority」: 「0」},{「TableName」 : 「RD.vwRouteDetail」, 「描述」: 「RouteDetail」, 「MandatoryFlag」: 「1」, 「狀態」: 「」, 「優先級」: 「0」},{ 「表名」: 「 XA.vwProdu ctType「,」Description「: 」Brand Product C「,」MandatoryFlag「: 」1「,」Status「:」「,」Priority「: 」0「},{」TableName「: 」XA.vwTown 」, 「描述」: 「鎮 」, 「MandatoryFlag」: 「1」, 「狀態」: 「」, 「優先級」: 「0」}]}
這是我的SOAP處理方法
// ksoap2 calling wcf
public SoapPrimitive soapPrimitive(String METHOD_NAME, String SOAP_ACTION, String NAMESPACE, String URL) throws IOException, XmlPullParserException {
SoapPrimitive responses = null;
SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME); //set up request
request.addProperty("strExec", "7067");
request.addProperty("strBusinessUnit", "HEMA");
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11); //put all required data into a soap envelope
envelope.dotNet = true;
envelope.setOutputSoapObject(request);
AndroidHttpTransport httpTransport = new AndroidHttpTransport(URL);
httpTransport.debug = true;
try{
Log.w("Log_cat" ,"*********" + envelope.toString());
httpTransport.call(SOAP_ACTION, envelope);
Log.w("log_tag", " ===========" +SOAP_ACTION);
// Object result = (Object)envelope.getResponse();
// JSONArray jArray = new JSONArray(result.toString());
// Log.w("log_tag", " ===*********==" +jArray);
responses = (SoapPrimitive)envelope.getResponse();
}
catch(Exception e)
{
e.printStackTrace();
}
// Object response= envelope.getResponse();
return responses;
}
我的C#方法返回字符串與JSON(作爲一個字符串)。
如何僅在列表或數組中獲取表名稱。 請幫幫我。這裏有什麼不對?
它非常有幫助的建議。在我的情況下,WCF服務返回帶有JSON的String元素。 – Piraba
在我的情況下,我想使用SOAP,但是它返回帶有JSON的String元素。現在結果是如何得到值的正確方式?請幫助我。 – Piraba
請指導我如何處理這樣的SOAP值:{「Table1」:[{「TableName」:「LoadDistributor」,「Description」:「Distributor」,「MandatoryFlag」:「1」,「Status」:「」, 「Priority」:「0」}]} – Piraba