服务器端设置如下:
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Web;
using System.Web.UI;
using System.Web.Services;
using System.IO;
using System.Data.SqlClient;
using System.Web.Services.Protocols;/// <summary>
/// GetBinaryFile 的摘要说明
/// </summary>
[WebService(Namespace = "http://happy.ydjw.service/")]
[WebServiceBinding(ConformsTo = WsiProfiles.None)]
public class GetBinaryFile : System.Web.Services.WebService {
    public GetBinaryFile () {
        //如果使用设计的组件,请取消注释以下行 
        //InitializeComponent(); 
    }
[WebMethod(Description = "Web 服务提供的方法,返回给定文件类型。")]
    [SoapRpcMethod(Action = "http://happy.ydjw.service/GetImageType", RequestNamespace = "http://happy.ydjw.service/", ResponseNamespace = "http://happy.ydjw.service/")]
    public string GetImageType(string fileName)
    {
        ///这里只是测试,您可以根据实际的文件类型进行动态输出
        return fileName+"test";
    }
}
调用程序如下:package cndx.ydjw;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;
import org.ksoap2.SoapEnvelope;   
import org.ksoap2.SoapFault;   
import org.ksoap2.serialization.SoapObject;   
import org.ksoap2.serialization.SoapSerializationEnvelope;   
import org.ksoap2.transport.AndroidHttpTransport;   
import org.ksoap2.transport.HttpTransportSE;   
import org.xmlpull.v1.XmlPullParserException;  
import android.app.Activity;
import android.app.ProgressDialog;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.util.Log;
import android.widget.TextView;
public class ydjwMain extends Activity {
public static final String LOG_TAG = "happy";
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.main);
  HttpThread thread = new HttpThread(handler);
  // 构造请求参数
  HashMap<String, Object> params = new HashMap<String, Object>();
  try {
   params.put("fileName",  new String("zhjx".getBytes(),"UTF-8"));
  } catch (Exception ex) {
   ex.printStackTrace();
  }
  //
  String url = "http://132.99.38.108/aspxWebCS/GetBinaryFile.asmx";
  // String url =
  // "http://webservice.webxml.com.cn/WebServices/WeatherWebService.asmx";
  String nameSpace = "http://happy.ydjw.service/";
  String methodName = "GetImageType";
  // 开始新线程进行WebService请求
  thread.doStart(url, nameSpace, methodName, params);
}
Handler handler = new Handler() {
  public void handleMessage(Message m) {
   String result = (String) m.getData().getString("data");
   TextView textView = (TextView) findViewById(R.id.result);
   textView.setText(result);
  }
};
public class HttpThread extends Thread {
  private Handler handle = null;
  String url = null;
  String nameSpace = null;
  String methodName = null;
  HashMap<String, Object> params = null;
  ProgressDialog progressDialog = null;
  // 构造函数
  public HttpThread(Handler hander) {
   handle = hander;
  }
  /**
   * 启动线程
   */
  public void doStart(String url, String nameSpace, String methodName,
    HashMap<String, Object> params) {
   // TODO Auto-generated method stub
   this.url = url;
   this.nameSpace = nameSpace;
   this.methodName = methodName;
   this.params = params;
   progressDialog = ProgressDialog.show(ydjwMain.this, "提示",
     "正在请求请稍等......", true);
   this.start();
  }
  /**
   * 线程运行
   */
  @Override
  public void run() {
   // TODO Auto-generated method stub
   System.out.println("jack");
   super.run();
   try {
    // web service请求
    SoapObject result = (SoapObject) CallWebService();
    System.out.println("happy");
    System.out.println(result.getPropertyCount());
    String rlt =(String) result.getProperty(0);
    System.out.println(rlt);
    // a取消进度对话框
    progressDialog.dismiss();
    // 构造消息
    Message message = handle.obtainMessage();
    Bundle b = new Bundle();
    b.putString("data", rlt);
    message.setData(b);
    handle.sendMessage(message);
   } catch (Exception ex) {
    ex.printStackTrace();
   } finally {
   }
  }
  /**
   * 请求web service
   */
  protected Object CallWebService() {
   String SOAP_ACTION = nameSpace + methodName;
   // 创建SoapObject实例
   SoapObject request = new SoapObject(nameSpace, methodName);
   // 请求参数
   if (params != null && !params.isEmpty()) {
    System.out.println("paramssize-->"+params.size());
    for (Iterator it = params.entrySet().iterator(); it.hasNext();) {
     Map.Entry e = (Entry) it.next();
     request.addProperty(e.getKey().toString(), e.getValue());
    }
   }
   // 生成调用web service方法的soap请求消息
   SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
     SoapEnvelope.VER11);
   // 设置.net web service
   envelope.bodyOut=request;
   envelope.dotNet = true;
   
   
   // 发送请求
   envelope.setOutputSoapObject(request);
   //
   AndroidHttpTransport androidHttpTrandsport = new AndroidHttpTransport(
     url);
   Object result = null;
   try {
    // web service请求
    androidHttpTrandsport.debug=true;
    androidHttpTrandsport.call(SOAP_ACTION, envelope);
    System.out.println( androidHttpTrandsport.requestDump);
    System.out.println( androidHttpTrandsport.responseDump);
    // 得到返回结果
    result = envelope.bodyIn;
    //result=(Object)androidHttpTrandsport.responseDump;
   } catch (Exception ex) {
    Log.e("SoapFault",ex.getMessage());   
    ex.printStackTrace();
   }
   return result;
  }
}}
返回结果:
test
而不是正确的"zhjxtest"!!!网上找了一天,都找不到解决办法,请大家帮帮忙!!!