[英]Passing parameters to web service method in c#
我正在開發一個Android應用程序..它將位置數據發送到Web服務以存儲在服務器數據庫中。
在Java中:我使用了這個協議,因此URI是:HTTP請求而不是REST
HttpPost request = new HttpPost("http://trafficmapsa.com/GService.asmx/GPSdata?lon="+Lon+"&Lat="+Lat+"&speed="+speed);
在Asp.net(c#)中,Web服務將是:
[WebMethod]
public CountryName GPSdata(Double Lon, Double Lat, Double speed)
{
String ConnStr = ConfigurationManager.ConnectionStrings["TrafficMapConnectionString"].ConnectionString;
SqlConnection myConnection = new SqlConnection(ConnStr);
SqlCommand myCommand = new SqlCommand("INSERT INTO Traffic(Longitude,Latitude,Speed,Distance,Time,MAC_Address) VALUES('" + (@Lon).ToString() + "','" + (@Lat).ToString() + "','" + (@speed).ToString() )", myConnection);
SqlDataAdapter sadp = new SqlDataAdapter();
sadp.SelectCommand = myCommand;
myConnection.Open();
DataSet DS = new DataSet();
myCommand.ExecuteNonQuery();
myConnection.Close();
}
從android傳遞數據后沒有返回..並且數據庫中沒有數據!! CS文件中是否缺少任何庫! 我無法弄清楚問題是什么。
如果需要REST,請使用WCF REST而不是ASP.NET Web服務。 ASMX服務中沒有REST可能性。
ASFAIK無法通過REST調用.net Web服務。 因為Web服務部署在SOAP over HTTP上。 對於這種要求,您需要使用一些第三方庫,如KSOAP。 一旦檢查這個帖子
也許最簡單的解決方案是在Web服務上啟用JSON。 基本上它只是在Web配置文件中進行了一些更改。 看看這里: http : //www.codegain.com/articles/aspnet/howto/prepare-a-json-web-service-and-access-it-with-jquery.aspx 。 代碼示例用於jquery,但是從android創建json對象非常容易。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.