模拟软件升级器的功能

引言:

今天看了博客园一位博友“菜菜灰”写的博文:《关于软件多版本升级的一些思考》,有感而发,虽然是做Web应用,在线升级版本的功能还是很必要。

上午花费了2个小时写了一个“模拟软件在线升级的类”,希望对博友“菜菜灰”有点帮助。

 

软件类:

    /// 
    /// 软件类
    /// 
    public class Soft
    {
        private string v = "1.0";
        private IList<string> vl = new List<string>() { "1.0", "2.0", "3.0", "4.0" };
        /// 
        /// 当前版本
        /// 
        public string Version
        {
            get
            {
                return this.v;
            }
            set
            {
                this.v = value;
            }
        }
        /// 
        /// 版本列表
        /// 
        public IList<string> VersionList
        {
            get
            {
                return this.vl;
            }
            set
            {
                this.vl = value;
            }
        }
    }

软件升级器:

    /// 
    /// 软件升级器
    /// 
    public class SoftUpdater
    {
        public Soft soft = new Soft();
        
        /// 
        /// 更新版本
        /// 
        /// 
   
   
        public bool Update()
        {
            // 当前版本
            string ver1 = soft.Version;
            // 目标版本
            string ver2 = (soft.VersionList.IndexOf(ver1) == soft.VersionList.Count - 1) ? ver1 : soft.VersionList[soft.VersionList.IndexOf(ver1) + 1];
            return this.Update(ver1, ver2);
        }
        /// 
        /// 更新版本
        /// 
        /// 当前版本
        /// 目标版本
        /// 
   
   
        public bool Update(string ver1, string ver2)
        {
            if (ver1.Equals(ver2))
            {
                HttpContext.Current.Response.Write("已经是最新版本");
                HttpContext.Current.Response.Write("
");
            }
            else
            {
                HttpContext.Current.Response.Write(string.Format("{0} 升级到 {1}", ver1, ver2));
                HttpContext.Current.Response.Write("
");
                string ver3 = ver2;
                string ver4 = (soft.VersionList.IndexOf(ver3) == soft.VersionList.Count - 1) ? ver3 : soft.VersionList[soft.VersionList.IndexOf(ver3) + 1];
                return this.Update(ver3, ver4);
            }
            return true;
        }
    }

 

输出结果:

1

 

安布雷拉 标签:
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值