当前位置: 代码迷 >> Web Service >> 怎样创建一个soaphead解决思路
  详细解决方案

怎样创建一个soaphead解决思路

热度:251   发布时间:2016-05-02 02:51:55.0
怎样创建一个soaphead
服务端要求的格式如下

<Security xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
  <UsernameToken>
  <Username>123</Username>
  <UserTokenID>12345678</UserTokenID>
  </UsernameToken>
 </Security>

用C#定义了类
public class UsernameToken
{
  public string Username;
  public string UserTokenID;
}

请教如何创建soaphead

------解决方案--------------------
不会吧,msdn里没有说命名空间为空就只能创建字符串,试了下,好像也可以为对象。

另外试试这个:

先生成代理类,假设是Reference.cs。
打开文件,在类定义的前面手工添加:

C# code
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "2.0.50727.4927")]    [System.SerializableAttribute()]    [System.Diagnostics.DebuggerStepThroughAttribute()]    [System.ComponentModel.DesignerCategoryAttribute("code")]    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://tempuri.org/")]    [System.Xml.Serialization.XmlRootAttribute(Namespace="http://tempuri.org/", IsNullable=false)]    public partial class UserNameToken : System.Web.Services.Protocols.SoapHeader {                private string _Username;        private string _UserTokenID;                        private System.Xml.XmlAttribute[] anyAttrField;                /// <remarks/>        public string Username {            get {                return this._Username;            }            set {                this._Username= value;            }        }        /// <remarks/>        public string UserTokenID{            get {                return this._UserTokenID;            }            set {                this._UserTokenID= value;            }        }                /// <remarks/>        [System.Xml.Serialization.XmlAnyAttributeAttribute()]        public System.Xml.XmlAttribute[] AnyAttr {            get {                return this.anyAttrField;            }            set {                this.anyAttrField = value;            }        }    }
------解决方案--------------------
假设java很恶心地用了非标准的web service,我们一定要去适配它吗?

建议你请它们修改为没有头的web service,或者修改为直接用最普通的http post基本通讯方式传json字符串的方式。
  相关解决方案