C# 获得;无法从SOAP标头中提取用户";例外
在这里,当向web服务发出请求时,我得到的异常为FaultException未处理,消息为无法从SOAP头提取用户 我的代码如下C# 获得;无法从SOAP标头中提取用户";例外,c#,soap,C#,Soap,在这里,当向web服务发出请求时,我得到的异常为FaultException未处理,消息为无法从SOAP头提取用户 我的代码如下 static void Main(string[] args) { Request.ServicesExternalClient se = new Request.ServicesExternalClient(); se.ClientCredentials.UserName.UserName = "Us
static void Main(string[] args)
{
Request.ServicesExternalClient se = new Request.ServicesExternalClient();
se.ClientCredentials.UserName.UserName = "UserName";
se.ClientCredentials.UserName.Password = "Password1";
BindingElementCollection elements = se.Endpoint.Binding.CreateBindingElements();
elements.Add(SecurityBindingElement.CreateUserNameForSslBindingElement());
System.Uri uri = new System.Uri("--url--");
se.Endpoint.ListenUri = uri;
StringBuilder xml = new StringBuilder();
xml.Append(@"<?xml version=""1.0"" encoding=""UTF-8""?>");
xml.Append(@"<NewInvoiceRequest >");
xml.Append(@"<tracingLevel>OFF</tracingLevel>");
'
'
'
'
'
'
'
xml.Append(@"</NewInvoiceRequest>");
Request.NewInvoiceRequest newInvRequest = new Request.NewInvoiceRequest();
Request.Invoice inv = new Request.Invoice();
using (MemoryStream stream = new MemoryStream())
{
XmlSerializer s = new XmlSerializer(typeof(Request.NewInvoiceRequest));
StreamWriter sw = new StreamWriter(stream);
using (StringReader sr = new StringReader(xml.ToString()))
{
newInvRequest = (Request.NewInvoiceRequest)s.Deserialize(sr);
}
}
Request.NewInvoiceResponse res = se.createNewInvoice(newInvRequest);
}
static void Main(字符串[]args)
{
Request.ServicesExternalClient se=新的Request.ServicesExternalClient();
se.ClientCredentials.UserName.UserName=“UserName”;
se.ClientCredentials.UserName.Password=“Password1”;
BindingElementCollection-elements=se.Endpoint.Binding.CreateBindingElements();
添加(SecurityBindingElement.CreateUserNameForSslBindingElement());
System.Uri=新的System.Uri(“--url--”);
se.Endpoint.ListenUri=uri;
StringBuilder xml=新的StringBuilder();
xml.Append(@“”);
xml.Append(@“”);
xml.Append(@“OFF”);
'
'
'
'
'
'
'
xml.Append(@“”);
Request.NewInvoiceRequest newInvRequest=新请求。NewInvoiceRequest();
Request.Invoice inv=新Request.Invoice();
使用(MemoryStream stream=new MemoryStream())
{
XmlSerializer s=新的XmlSerializer(typeof(Request.NewInvoiceRequest));
StreamWriter sw=新StreamWriter(流);
使用(StringReader sr=new StringReader(xml.ToString()))
{
newInvRequest=(Request.NewInvoiceRequest)s.Deserialize(sr);
}
}
Request.newinvoicesresponse res=se.createNewInvoice(newInvRequest);
}