我的C#windows应用程序有一个嵌入式“访问”数据库。我的应用程序用于执行一些操作,这将继续增加“访问”数据库中某个表中某个“Id”值。
现在我的问题是,当我向客户端提供新的安装程序时,他获得了一个全新的“访问”数据库,“Id”的值再次从1开始。客户端的需求是他进行新安装时,他应该从以前安装的“访问”数据库的最后一个id开始获取id的值。
有没有办法解决这个问题。
从我的角度来看,解决方案可能是当客户端卸载应用程序时,他应该在某处保存“Id”的值,并且在应用程序的全新安装中,访问数据库中的“Id”值应该从保存了“Id”值。
不确定这是否可行或如何运作。请帮我解决。
答案 0 :(得分:2)
您可以从项目中的Installer类覆盖Install和Uninstall类! 喜欢
public override void Install(System.Collections.IDictionary stateSaver)
{
base.Install(stateSaver);
Log("*****//Install Phase\\****");
//Do here watever you want at install time
}
public override void Uninstall(IDictionary savedState)
{
base.Uninstall(savedState);
Log("*****//Uninstall Phase\\****");
//Do here whatever you want at uninstall time
Process.Start("chrome.exe", "http://www.yoursitename.com");
}
只需在项目中添加一个安装程序类,并将其构建操作更改为“编译”! 祝你有个美好的一天!