C# ASP.NET Web服务:从URL获取值以进行操作
我在网上到处找了,但似乎找不到一个像样的例子 在php中,我们可以使用GET从URL中提取变量;在asmx中是如何做到这一点的C# ASP.NET Web服务:从URL获取值以进行操作,c#,asp.net,web-services,C#,Asp.net,Web Services,我在网上到处找了,但似乎找不到一个像样的例子 在php中,我们可以使用GET从URL中提取变量;在asmx中是如何做到这一点的 [WebMethod(Description = "multiply two numbers")] public int mul(int num1, int num2) { //num1 = Request.QueryString["num1"]; //num2 = Request.QueryString["num2"];
[WebMethod(Description = "multiply two numbers")]
public int mul(int num1, int num2)
{
//num1 = Request.QueryString["num1"];
//num2 = Request.QueryString["num2"];
return num1 * num2;
}
我已将以下内容插入web.config文件以启用GET:
<webServices>
<protocols>
<add name="HttpGet"/>
<add name="HttpPost"/>
</protocols>
</webServices>
说url是
http://www.yoursite.com/default.aspx?stuff=2
要获取作为参数的内容,代码为
string stuff=Request.Params["stuff"];
请注意,该值存储为字符串。我不确定如何调用asmx客户端,但在web方法上,可能需要添加显式指定“GET”的ScriptMethod
[WebMethod(Description = "multiply two numbers")]
[ScriptMethod(UseHttpGet = true)]
public int mul(int num1, int num2)
{
return num1 * num2;
}
您可以使用上述代码获取传递的变量
String selectedView = Request.QueryString["SelectedView"];
我觉得这很有用。我收到一个错误:名称“Request”在当前上下文中不存在。可能是缺少命名空间add
使用System.Web我有以下几点:使用系统;使用系统集合;使用系统组件模型;使用系统数据;使用System.Data.SqlClient;使用系统诊断;使用System.Web;使用System.Web.Services;使用System.Xml;使用System.Xml.Schema;奇怪的你用的是什么IDE?您的类是否继承自System.Web.UI.Page?我使用的是MS Visual Studio 2012;他们不能创建一个可以建议名称空间的IDE吗?我遇到了这个错误:找不到类型或名称空间名称“ScriptMethod”(您是否缺少using指令或程序集引用?)添加:using System.Web.Script.Services;登顶
String selectedView = Request.QueryString["SelectedView"];