关于软件多版本升级的一些思考
最近一直在思考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 />");
}
}
}
关键字 关于软件多版本升级的一些思考
推荐.NET配套的通用数据层ORM框架:CYQ.Data 通用数据层框架