找人办事

2019-11-27 07:26 来源:未知

用简短的例子,说西魏理(Proxy)设计方式。

Insus.NET在家忙写程序未有的时候间,手机没钱了,叫儿子给一百元去超级市场(此超级市场有部手提式有线话机充值的劳务)帮Insus.NET手提式有线电话机充钱(话费)。
手提式有线电话机充钱的事,Insus.NET会做,外甥也会做,不过Insus.NET因某个情状,无法亲自学考试办公室,叫孙子去代理(Proxy)。

概念二个抽象类[Work],让和睦大概外孙子体系都能贯彻的充钱方法:

图片 1图片 2Work

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

/// <summary>
/// Summary description for Work
/// </summary>
namespace Insus.NET
{
    public abstract class Work
    {
        public abstract void Suppliement();
    }
}

当自身从不异样情况,或是一时间的场合之,自个儿去超级市场对手提式有线话机充钱:

图片 3图片 4Self

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

/// <summary>
/// Summary description for Self
/// </summary>
namespace Insus.NET
{
    public class Self : Work 
    {
        public Self()
        {
            //
            // TODO: Add constructor logic here
            //
        }

        public override void Suppliement()
        {
           HttpContext.Current.Response.Write ("手机充值人民币100元");
        }
    }
}

业务代办,叫外孙子去帮Insus.NET的无绳电电话机充钱:

图片 5图片 6Son

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

/// <summary>
/// Summary description for Son
/// </summary>
namespace Insus.NET
{
    public class Son: Work 
    {
        Self objSelf;

        public Son()
        {
            //
            // TODO: Add constructor logic here
            //
        }

        public override void Suppliement()
        {
            if (objSelf == null)
            {
                objSelf = new Self();
            }

            objSelf.Suppliement();
        }
    }
}

asp.net运路程序,在站点创建贰个aspx网页:

图片 7图片 8ProxyDemo.aspx.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Insus.NET;

public partial class ProxyDemo : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        //自己为Insus.NET手机充值
        Self objSelf = new Self();
        objSelf.Suppliement();


        //儿子(代理)为Insus.NET手机充值。
        Son objSon = new Son();
        objSon.Suppliement();
    }
}

 

 

TAG标签:
版权声明:本文由澳门国际银河备用网址发布于www.308877.com,转载请注明出处:找人办事