如何编写可以在将来更新的c#表单应用程序(通过安装更新​​的代码或文件)

时间:2016-09-15 18:49:16

标签: c# database winforms updates

假设我发布了一个Windows表单应用程序,其中包含 2个标签 2个文本字段(名称,电子邮件),一个SAVE按钮和一个按钮名称更新(文件选择器)。再说我的程序中有两种方法。

public void Func1(){
....
}
public void Func2(){
....
}

我发布了表单申请by Windows installer

现在让我说我需要更新/添加我的应用程序中的一些功能(我想添加另一个字段名称电话号码与它相应的级别,文本字段,数据库更新等...)和我想更新我的Func2,添加其他功能(让我们说public void Func3())。我希望我的更新按钮从文件中获取此更新。我的问题是我如何制作此更新文件并使整个过程正常工作。简短的项目对我来说很简单。

1 个答案:

答案 0 :(得分:2)

嗯,您最终可能会更换DLL和EXE。你可能不想更新它正在运行的程序,所以你要用另一个实用程序来完成它。

1)您可以使用ClickOnce(https://msdn.microsoft.com/en-us/library/142dbbz4(v=vs.90).aspx

2)您也可以通过让程序启动您创建的外部更新程序(如果需要,带有参数)以及更新程序启动时自己完成,然后让它关闭主应用程序,然后让它替换您需要替换的文件。之后,如果您愿意,它可以关闭自己并再次启动您的程序。

当您说进行数据库更新时,如果您正在使用启用了自动迁移的Entity Framework,那么当您更改数据库模型更新时,可以为您执行此操作。或者您可以运送带有SQL脚本的更新程序来运行。