将参数传递给c#中的Web服务方法

我正在开发一个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服务部署在基于HTTP的SOAP上。 对于这种需求,您需要使用一些第三方库,如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对象将非常简单。

链接地址: http://www.djcxy.com/p/60281.html

上一篇: Passing parameters to web service method in c#

下一篇: Compiled Linq Queries with Built