关于软件多版本升级的一些思考
最近一直在思考web软件的升级的管理,之前都是单独写的,一个一个版本的升级,但是后来发现夸版本升级比较麻烦,随着版本的升级,代码越来越多,代码不能重用,一直想不到一个即简单代码又简洁的方法。
using System; using System.Web; namespace Caicai.Jingpin.UI.Update { public class U_1_2 : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { string action = Request.QueryString["action"]; if (action == "update") { this.Update(); } } public void Update() { //升级文件程序 HttpContext.Current.Response.Write("V1.0升级到V2.0成功!"); HttpContext.Current.Response.Write("<br />"); } } }
using System; using System.Web; namespace Caicai.Jingpin.UI.Update { public class U_2_3 : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { string action = Request.QueryString["action"]; string version = Request.QueryString["version"]; if (version == "1") { new U_1_2().Update(); } if (action == "update") { this.Update(); } } public void Update() { //升级文件程序 HttpContext.Current.Response.Write("V2.0升级到V3.0成功!"); HttpContext.Current.Response.Write("<br />"); } } }
using System; using System.Web; namespace Caicai.Jingpin.UI.Update { public class U_3_4 : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { string action = Request.QueryString["action"]; string version = Request.QueryString["version"]; if (version == "1") { new U_1_2().Update(); new U_2_3().Update(); } if (version == "2") { new U_2_3().Update(); } if (action == "update") { this.Update(); } } public void Update() { //升级文件程序 HttpContext.Current.Response.Write("V3.0升级到V4.0成功!"); HttpContext.Current.Response.Write("<br />"); } } }
using System; using System.Web; namespace Caicai.Jingpin.UI.Update { public class U_4_5 : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { string action = Request.QueryString["action"]; string version = Request.QueryString["version"]; if (version == "1") { new U_1_2().Update(); new U_2_3().Update(); new U_3_4().Update(); } if (version == "2") { new U_2_3().Update(); new U_3_4().Update(); } if (version == "3") { new U_3_4().Update(); } if (action == "update") { this.Update(); } } public void Update() { //升级文件程序 HttpContext.Current.Response.Write("V4.0升级到V5.0成功!"); HttpContext.Current.Response.Write("<br />"); } } }