本篇隨筆主要是關(guān)于flex與asp.net的webservice通訊,其中利用了soapheader。(如果你對(duì)soapheader不了解,可以參考webservice開發(fā)(一) 如何使用soap頭)。由此可見webservice在跨平臺(tái)方面的優(yōu)勢(shì)。
asp.net的webservice代碼
using system;
using system.web;
using system.web.services;
using system.web.services.protocols;
[webservice(namespace = "http://davidfan.cnblogs.com")]//名稱空間應(yīng)該和flex中定義相同
[webservicebinding(conformsto = wsiprofiles.basicprofile1_1)]
public class service : system.web.services.webservice
{
    public validatesoapheader header;
    [webmethod]
    [soapheader("header")]
    public string helloworld()
    {
        if (header == null)
        {
            return "請(qǐng)?zhí)峁?yàn)證信息.";
        }
        else
        {
            if (header.name == "admin" && header.password == "admin")
            {
                if (header.exdate < datetime.now)
                {
                    return "帳號(hào)過期";
                }
                else
                {
                    return "驗(yàn)證成功";
                }
            }
            else
            {
                return "用戶名或密碼錯(cuò)誤";
            }
        }
    }
}
/**//// <summary>
/// 繼承自soapheader的自定義類
/// </summary>
public class validatesoapheader : system.web.services.protocols.soapheader
{
    public validatesoapheader()
    {
    }
    public validatesoapheader(string name, string password, datetime dt)
    {
        this.name = name;
        this.password = password;
        this.exdate = dt;
    }
    private string name;
    public string name
    {
        get { return name; }
        set { name = value; }
    }
    private string password;
    public string password
    {
        get { return password; }
        set { password = value; }
    }
    private datetime exdate;
    public datetime exdate
    {
        get { return exdate; }
        set { exdate = value; }
    }
}
flex的mxml、as代碼
mxml
as
新聞熱點(diǎn)
疑難解答
圖片精選