VS2008发布网站生成一个固定DLL,只需更新dll文件即可

作者: unvs 分类: ASP.NET 发布时间: 2011-03-23 23:10 ė18,238 views 6没有评论

在使用VS2005和VS2008来开发网站,在发布网站时不会像VS2003一样生成规则的DLL文件,而生成的DLL文件名含有随机数不固定且不能一个项目生成一个DLL文件,每次更新的时候的全部更新才行。为了做到像vs2003一样,微软发布了WebDeployment Project 插件可以解决此问题:
http://www.microsoft.com/downloads/details.aspx?FamilyId=0AA30AE8-C73B-4BDD-BB1B-FE697256C459&displaylang=en
http://msdn.microsoft.com/en-us/library/aa479568.aspx
下载网址1:http://download.microsoft.com/download/c/c/b/ccb4877f-55f7-4478-8f16-e41886607a0e/WebDeploymentSetup.msi
下载网址2: 文件名 WebDeploymentSetup2005.msi  http://d.namipan.com/d/21168cc1bf8d96043b3d2c2f8dc2b2bed58fc6a700240e00

VS2008下的:http://download.microsoft.com/download/0/5/b/05b4424b-5b9b-4961-8ec6-91e9f1741b2d/WebDeploymentSetup.msi
下 载网址2:文件名 WebDeploymentSetup2008.msi http://d.namipan.com/d/bc296416ca16e1879df8ef9695dac3587a268a0900ba0a00
1、下载后安装、右键选择当前的WEB项目,会出现一个选项"Add Web Deployment Project"
2、选择添加一个WebDeployment Project(输入自定义的程序集名称和发布地址)
3、右键选择该项目选择“生成”,此时会发布网站到指定的目录,生成DLL文件,更新时只需上传编译好的 .DLL 文件就可以了.

如下图:

 

 

 

vs生成项目

 

下面是发布生成,碰到问题的解决方法:(2011-07-17更新)

一、"aspnet_merge.exe”已退出,代码为1的错误的解决方法

发布时老是报出,"aspnet_merge.exe”已退出,代码为1的错误

“那就是详细的输出信息只能在输出栏中查看“而不是错误信息栏
而且发布的DLL并没有合成一个,还是像以前一样,一大堆;

首先将VS 2005的工具-选项-项目和解决方案-生成并运行,设置“MSBuild 项目生成输出详细信息”,选择“详细”,再次生成。。

Web Deployment Projects项目,“输出”框内的信息就变得非常丰富了;这样就可以查看哪里出错了;

果然,再次发布,错误停在了
错误 1 合并程序集时出错: ILMerge.Merge: ERROR!!: Duplicate type ‘ uadmin_news_admin_article_list ‘ found in assembly ‘App_Web_fa8u_rhu’. aspnet_merge 1 1 zzbj_web_deploy
An error occurred when merging assemblies: ILMerge.Merge: ERROR!!: Duplicate type ‘web_left’ found in assembly ‘App_Web_k7ytr’

它的意思是说web_left的类,已经存在了,并存在重复的上面绿色的字符,可以到整个项目里搜索这个字符串,会发现出现2次以上,你只要把这几个地方调整正确,就可以生成了。。。
一般这种情况的发生,是在程序员直接将一个页面复制过来,而没有完全把页面名称及inherits调用处改过来,而导致这种错误。。。

本博文章基本上属于原创或收集整理,都是心血结晶。
欢迎转载分享,转载请注明出处,谢谢!
本文地址:VS2008发布网站生成一个固定DLL,只需更新dll文件即可

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Ɣ回顶部