2011-11-14 17 views
0

私はアンドロイドからWebサービスを呼び出していますが、応答ではシンボルの代わりにコードが表示されます。 例えば>の場合は&gt<の場合は&ltとなります。なぜこれはそうですか?Webサービスのレスポンスは、シンボルの代わりにコードを表示します

+0

は、エンコード形式、UTF-8またはその他の形式でWebサービスレスポンスをエンコードし、 – user370305

答えて

0

文字列のWebサービスの応答に問題がある可能性があります。 WebサービスはSOAPエンベロープとXMLエンコードに応答をラップするSOAPプロトコルを使用するためです。

Webサービスの作成中にこの問題が発生し、問題を解決した文字列の代わりにオブジェクトの配列が返されました。

public class Product 
{ 
    public string ProductID { get; set; } 
    public string ProductName { get; set; } 
} 

[WebMethod(Description="Return All Current Products")] 
public Product[] ReturnProducts() 
{ 
    DataTable dataTable = getProductsFromDB(); 
    List<Product> products = new List<Product>(); 

    if (dataTable.Rows.Count > 0) 
    { 
     foreach (DataRow objRow in dataTable.Rows) 
     { 
      Product product = new Product 
      { 
       ProductID = objRow["ProductID"].ToString(), 
       ProductName = objRow["ProductName"].ToString() 
      }; 
      products.Add(product); 
     } 
    } 
    return product.ToArray(); 
} 

まずReturnProducts()の戻り値の型は、私は私の問題を解決したProduct[]にコードおよび戻り値の型を変更し、その後、あなたが直面している問題を生産してstringました。

ご希望の場合はお手数ですが、

関連する問題