写入.net Web服务消耗来自SAP

时间:2012-12-14 02:36:36

标签: c# .net web-services sap

我需要编写.Net(C#)Web服务,它从SAP方面消费。我写了c#web serives,但问题是需要添加HTTP请求头。实际上我不知道如何将HTTP请求标头添加到Web服务?我添加了SOAP Header,但SAP方面需要HTTP请求Header。

示例代码

    public class TestService : System.Web.Services.WebService
    {
         public class AuthSoapHeader : SoapHeader
         {
              public AuthSoapHeader() { }

              public string Username = string.Empty;
              public string Password = string.Empty;
         }

        [WebMethod]
        [SoapHeader("AuthHeader")]
        public List<Response> Testmethod(TestClass testData)
        {

            if ( AuthHeader.Username == "testuser" && AuthHeader.Password == "testpawd")
            {
            }
        }
    }

请有人知道怎么做吗?

谢谢

1 个答案:

答案 0 :(得分:0)

我已经在类似的解决方案上工作,但在VB.net中。在该解决方案中,我创建了一个分离的层(项目)来处理SAP通信和数据检索。 下面的代码是带有SOAP身份验证的webservice代码段。

<SoapHeader("Authentication", Required:=True)> _
<WebMethod(Description:="SAP search")> _
Public Function SampleSearch() As String

    Dim objSearch As New clsSapSearch
    Dim dsReturn As New DataSet
    dsReturn.Tables.Add(objSearch.Search("parameter1", "parameter2"))

    Return GetXmlIncludingNull(dsReturn)

End Function