我试图使用Web服务从URL中提取id号,以便它可以用作select语句中where子句的参数,该语句根据记录的id号从数据库生成数据.然后将该数据传递回页面以填充jQuery模式弹出窗口中的元素.
使用静态ID号(ex :),一切正常string postid = "120",但我不知道如何从URL获取id号.我在.Net 4中使用路由,并且在页面中访问路由的方法在Web服务中不起作用.在页面中我只是做类似的东西,var id = RouteData.Values["id"];并获得id,但当我在Web服务中做到这一点时,我收到一个错误:
CS0120:非静态字段,方法或属性需要对象引用
'System.Web.Routing.RouteData.Values.get'
摘要:
我从一个详细信息页面访问了Web服务,我想要获取RouteData请求的页面.我想在页面上尽可能轻松地使用RouteData.Values它,就像现在过时一样容易Request.Querystring.
现在我更加困惑,因为虽然我可以轻松地为Web服务添加新路由,但我不知道因为webservice.asmx/webmethod语法而使用jQuery Ajax.
现在我的jQuery Ajax中有URL:"../webservices /googlemaps.asmx/GetGoogleMap",但这不是真正的URL.它只存在于某个地方的jQuery中,并且使用JavaScript调用服务的方式也不是真正的URL,webservice.webmethod()在这种情况下它就是googlemaps.GetGoogleMap().
我会尝试注册一个路由webservices/googlemaps.asmx/GetGoogleMap/postid,但我怀疑它会起作用,因为GetGoogleMap它不是一个目录或一个querystring.