AspNetAutoUpdate1.0----.Net B/S项目远程自动更新通用程序,非常有用的工具,VS2005下测试通过,附源码

phper2008 2009-12-13 03:07:40
开发bs项目,能否做到跟cs项目一样可以通过网络在线更新呢?答案是肯定的,方法也是多种多样的!

最近由于项目比较多,需要更新的范围也比较大,实施起来比较麻烦,所以干脆写了一套可以远程更新的程序,主要就是通过WebService,提供远程文件下载和更新。


源码下载地址http://download.csdn.net/source/1897460

通常将各个地区需要更新的文件放在webservice服务器目录下不同子文件夹里,做到各个地区程序的独立更新,同时简单记录一些更新信息,如哪个ip在什么时间更新过程序等。

以下是实现流程:

第一步,配置webservice服务程序

下载源码包,找到项目UpdateSiteService ,将其单独复制到webservice服务器(当然可以与你项目在同一台服务器),

然后配置虚拟目录,成功后运行如下路径:

http://localhost/AutoUpdate/UpdateService.asmx 即可看到webservice所提供的方法接口。

地址”localhost“表示当前机器所在ip,这个应该不用多说了。

在UpdateSiteService 根目录创建子文件夹,文件夹名称与下面web.config中AutoUpdateRegionCode的值相同如340100,表示是哪个地区需要更新的文件夹,名称可以自己写。

在此文件夹里创建2个文本文件,分别为:

version.txt 记录最新版本号 如1.0.0.1,此文件必须创建

description.txt 记录最新版本说明,此文件可以不创建

最后把需要更新的文件都放到此文件夹里即可,注意文件的位置和目录结构需要跟原项目结构相同

第二步,配置web项目web.config:

 <appSettings>  
<!--程序所在行政区划-->
<add key="AutoUpdateRegionCode" value="340100"/>
<!--备份文件夹路径-->
<add key="AutoUpdateBackPath" value="E:\VssBackUp\"/>
<!--更新程序服务地址-->
<add key="AutoUpdateUrl" value="http://localhost/AutoUpdate/UpdateService.asmx"/>
</appSettings>



第三步,在web页面注册AutoUpdateControl 控件

AutoUpdateControl 控件源码在项目”AutoUpdate“中。

注册控件如:



<%@ Register Namespace="AutoUpdate" TagPrefix="cc" Assembly="AutoUpdate"%>
<cc:AutoUpdateControl ID="cc1" runat="server" Font-Size="12px"></cc:AutoUpdateControl>


页面运行后效果:

点”更新程序文件“按钮提示:

点”确定“开始更新:

显示进度信息:

更新完毕后点”确定“或”X“按钮返回界面:

如果想做成和软件一样,不出现更新界面 则,可以设置控件的<UpdateInfo IsAutoUpdate="True" 。。。/>

则默认页面加载后自动连接远程服务器,检测是否需要更新:

点确定即可:

本程序尚存在一些问题,喜欢钻研的朋友可以自己查看源码,将程序扩展做得更强大!

由于时间匆忙,自我感觉代码的确有些粗糙,这也是我放出源码的原因!希望大家批评指正!

有不懂的问题可以联系我QQ:410329177,添加时输入”AutoUpdate或AjaxPager“字样。

源码下载地址http://download.csdn.net/source/1897460
...全文
434 55 打赏 收藏 转发到动态 举报
写回复
用AI写文章
55 条回复
切换为时间正序
请发表友善的回复…
发表回复
dragon1230 2012-06-06
  • 打赏
  • 举报
回复
支持,找了好久的东西了
zl5737 2012-04-26
  • 打赏
  • 举报
回复
很好很强大
XiaoSanLun 2011-07-18
  • 打赏
  • 举报
回复
谢谢 分享 顶起来 正要用到这个
坚晗 2011-06-22
  • 打赏
  • 举报
回复
看看先。呵呵!
TX593 2010-08-17
  • 打赏
  • 举报
回复
谢谢分享
huyan1229 2010-07-01
  • 打赏
  • 举报
回复
先下载下来看看先,谢谢分享咯,.
klmy 2010-02-20
  • 打赏
  • 举报
回复
支持,收藏研究,学习一下
zhao38322684 2010-02-20
  • 打赏
  • 举报
回复
哪位好心人给我个。it_workers@hotmail.com
polarissky 2010-02-20
  • 打赏
  • 举报
回复
赞一个先,然后好好学习
灵雨飘零 2010-02-20
  • 打赏
  • 举报
回复
好东西,收藏研究
好东西,收藏研究
段传涛 2010-02-20
  • 打赏
  • 举报
回复
how kind of you .
i'll pack away your code
thank you
夏脑 2010-02-20
  • 打赏
  • 举报
回复
收藏了不错,收藏了不错
wangan2008 2010-02-20
  • 打赏
  • 举报
回复
收藏了不错,收藏了不错
灵雨飘零 2010-02-20
  • 打赏
  • 举报
回复
不错,收藏了不错,收藏了不错,收藏了不错,收藏了不错,收藏了不错,收藏了不错,收藏了不错,收藏了
大腹 2010-02-20
  • 打赏
  • 举报
回复
Mark一下,感觉比较有用。
wxg_sdwl 2010-01-15
  • 打赏
  • 举报
回复
收藏学习。
av168659700 2010-01-15
  • 打赏
  • 举报
回复
收藏了!!
追寻风的自由 2010-01-15
  • 打赏
  • 举报
回复
支持
PandaIT 2010-01-14
  • 打赏
  • 举报
回复
.
xuyiazl 2010-01-14
  • 打赏
  • 举报
回复
技术还是不错的,,

但是确实实际用处不大。。。。

大公司不来这套,,,就算是改个小地方都需要一层层的审核。

也有专门的测试团队 开发团队 DBA团队 运营团队。。

这一切都是流水线操作,,轮不到程序员自己放程序更新到服务器上然后自动更新。



小公司直接FTP到服务器就OVER了。。。反倒自动更新更麻烦。
加载更多回复(34)

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧