2

抱歉,如果这是一个业余问题。我必须修改现有的 ASMX Web 服务。问题是,我需要修改 Web 服务生成的响应。以下是当前响应的示例:

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" mlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <InsertCaseShortResponse xmlns="http://website.com/Service/">
      <InsertCaseShortResult>50314</InsertCaseShortResult>
    </InsertCaseShortResponse>
  </soap:Body>
</soap:Envelope>

如果成功,InsertCaseShortResult 返回唯一的参考号,如果失败则返回错误消息。我需要做的是添加另一个响应标记,该标记给出关于插入是否成功的真或假标志。我无法在任何地方找到很多关于如何构建 Web 服务响应的信息,我想我在这里缺少一个基本元素。

任何想法都非常感谢。

4

1 回答 1

3

我假设您所说的“遗留”是指 ASMX Web 服务。

根据您的 WSDL,您的 Web 服务服务器端代码中似乎有这样的内容:

[WebMethod]
public int InsertCaseShort(/* params here */)
{
    int result;

    /* Code here */

    return result;
}

要添加附加字段,您需要返回类引用而不是整数值。

例子:

public class InsertCaseShortResult
{
    public int StatusCode { get; set; }
    public bool Successful { get; set; }
}

在您的 WebMethod 中:

[WebMethod]
public InsertCaseShortResult InsertCaseShort(/* params here */)
{
    var result = new InsertCaseShortResult();

    /* Code here */

    return result;
}

随时提出任何其他问题。

于 2012-05-22T12:30:00.050 回答