【问题标题】:Call web service with parameters使用参数调用 Web 服务
【发布时间】:2018-10-08 21:37:29
【问题描述】:

我必须调用网络服务。 Web 服务输入了两个参数,并且在输出中不返回任何内容。

你能告诉我代码(写在下面)是否正确和完整? 我将它插入到主目录中。

var httpWebRequest = (HttpWebRequest)WebRequest.Create("url");
httpWebRequest.ContentType = "application/json";
httpWebRequest.Method = "POST";
httpWebRequest.Credentials = new NetworkCredential("user", "pwd", "domain");

using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream()))
{
    string json = "{p1:\'Hello\'";

    string tmpjs = ",p2:\'world\'}";                       
    json = json + tmpjs;

    streamWriter.Write(json);
    streamWriter.Flush();
    streamWriter.Close();
}

HttpWebResponse httpResponse = (HttpWebResponse) httpWebRequest.GetResponse();

【问题讨论】:

  • 缩进有点不对劲。使用 tmpjs 的原因尚不清楚。 streamwriter 在using 时不需要关闭。如果它编译没有错误,运行它并查看它是否有效。

标签: c# .net web-services


【解决方案1】:

Add service reference 并调用您的 Web 服务方法会更容易。

然后你就可以访问this这样的服务了。

您的代码如下所示:

string json = "{p1:\'Hello\'";                              

string tmpjs = ",p2:\'world\'}";   
json = json + tmpjs;

using(YourService service = new YourService()) 
{
    service.Credentials = new NetworkCredential("user", "pwd", "domain");
    serivce.YourServiceMethod(json, param2);
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-15
    • 2023-04-04
    • 1970-01-01
    • 2011-12-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多