All articles| All Pictures| All Softwares| All Video| Go home page| Write articles| Upload pictures

Reading number is top 10 articles
HTML 5 预览(3)_[Html教程]
在ASP.NET中自动给URL加上超级链接_[Asp.Net教程]
分析:中文搜索引擎百度排名初步观察_JavaScript技术_编程技术
具体实现 XML 的三种方式_[XML教程]
left join、right join、inner join操作演示_[SQL Server教程]
如何用C#写所见即所得的设计器_[Asp.Net教程]
实用技巧:PHP中调用Java类的两种方法_php资料_编程技术
由浅入深完全掌握Ajax之Ajax 简介_[AJAX教程]
PHP技巧:PHP如何禁止图片文件的被盗链_[PHP教程]
PHP学习:关于Zend,Optimizer_php资料_编程技术
Reading number is top 10 pictures
战场废物1
随便发几张图
BingBingFan apple dew point photo gallery1
Fan bingbing black wings for platform and DanLuoWang believes beauty1
The real super beauty9
西游四格漫画(五)
男人,就要活出棱角
Ashlynn Brooke show proud chest measurement1
NeedWallpaper2
A man's favorite things12
Download software ranking
Boxer vs Yellow2
C#程序员参考手册
Tram sex maniac 2 (H) rar bag7
功夫熊猫2(下集)
Ashlynn Video1
网络管理员第三版
Professional killers2 data package
实战黑客不求人
Take off clothes to survival
Tram sex maniac 2 (H) rar bag9
aaa published in(发表于) 2013/12/18 8:02:13 Edit(编辑)
Visual,Studio2005发布问题解决办法_.net资料_编程技术

Visual,Studio2005发布问题解决办法_.net资料_编程技术

Visual Studio2005发布问题解决办法_.net资料_编程技术-你的首页-uuhomepage.com

  本文主要解决ASP.NET 2.0网站生成一个程序集。在使用WebDeploymentProject后出现的错误的解决办法。特别是生成时报索引超出了数据界限的错误。我也找了网上很多的资料,但最终还是没有解决,后来自己试了很久才试出来。欢迎大家交流指导。


  近来使用VS2005做项目,VS2005中发布网站时默认发布很多乱七八糟的程序集,这给升级网站时造成很大麻烦。去网上找了一下可以使用WebDeploymentProject的插件进行单个程序集的发布


  下载地址http://download.microsoft.com/download/c/c/b/ccb4877f-55f7-4478-8f16-e41886607a0e/WebDeploymentSetup.msi


  详细使用帮助请查看:


  http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnaspp/html/web_deployment_projects.asp


  安装完毕以后,测试一下真的很不错。关连的程序集的更新也可以随时更新,这可比vs2003强多了。vs2003有改一个引用的程序集就要更新所有的,不会就会说版本不对。


  但用到正式的项目的时候却出现了问题。特别是升级上来的项目就可能存在下列问题。


  碰到错误首先要把错误的详细信息输出来看看


  操作方法:


  VS 2005的工具菜单-选项-项目和解决方案-生成并运行,设置“MSBuild 项目生成输出详细信息”,选择“详细”。然后再生成Web Deployment Projects项目,查看“输出”对话框内的信息,就可以查看到详细的导致无法编译的问题。


  错误一:报错误:“aspnet_merge.exe已退出,代码为1”


  有两种情况,一种是 An error occurred when merging assemblies: 索引超出了数组界限。


  C:\Program Files\MSBuild\Microsoft\WebDeployment\v8.0\Microsoft.WebDeployment.targets(574,9): error MSB6006: “aspnet_merge.exe”已退出,代码为 1。


  到网上查了好久,有说是自定义属性的描述中有中文的缘故,比如[WebMethod(Description="测试方法")]这样子,可是我写一个测试的根本跟这个就没有什么关系。查了好久久还是未果,只好自己动手删除文件来测试了。


  解决过程:


  几乎把所有的文件都删除了,还是不行,后来才发现原来是因为AssemblyInfo.cs文件中有中文的问题。把所有的中文去掉即可。


  解决办法:


  普通的Web项目


  把AssemblyInfo.cs文件中所有的中文字都删除掉。注释可以不删除,然后再编译即可


  包括WebService的服务页的项目


  对于包括有webservice的页面则要检查Description是否有超过15个汉字的说明,如果超过就改短一点。这样就可以了。我还试了一下中英文组合的情况,非常奇怪的是,我用14个汉字加上两个英文可以,加上三个英文也可以,加上四个就不行了。后来我更狠一点。用一百多个英文字加两三个汉字也可以,到现在还没有搞明白是怎么回事,不过有一点可以确定的是,中文字不要超过15个,否则就会报“索引超出了数组界限”的错误。


  还有一种错误是:Duplicate type ’_Default’ found in assembly


  解决办法:


  看字面意思就明白原因了,就是一个程序集里发现了两个类名一样的类,这样肯定是不行的,但编译的时候又会过,因为放在不同的目录,VS2005就可以编译过了,真不明白vs2005是为什么要这么设计,因为vs2005在新建页面的时候没有把命名空间加上去,所以都是同一个命名空间下所以才会这样,VS 2005的WEB项目默认的把命名空间给去掉了,只能手动增加一个命名空间,在cs文件代码中加入namespace的语句块,同时也在修改aspx文件的<@page>的Inherits中写入对应的[namespace].[类名];


  其实这个问题类似于vs2003中的发布问题。如果项目中有两个文件名一样的情况也会报错,比如有两个help.aspx文件分别在不同的目录,或者a.gif文件在不同的目录也会报错。


  第二个错误一般是作过文件移动后在原位置又建立了同名文件,或在不同目录下移动文件而不是新建文件造成的 建立文件时,会自动以 folder_file 格式命名类,移动之后这个名字不会变,原位置再建立一个的话,问题就来了 这本来就是不合法的,但这次VS的容错有点过分了。





添加到del.icio.us 添加到新浪ViVi 添加到百度搜藏 添加到POCO网摘 添加到天天网摘365Key 添加到和讯网摘 添加到天极网摘 添加到黑米书签 添加到QQ书签 添加到雅虎收藏 添加到奇客发现 diigo it 添加到饭否 添加到飞豆订阅 添加到抓虾收藏 添加到鲜果订阅 digg it 貼到funP 添加到有道阅读 Live Favorites 添加到Newsvine 打印本页 用Email发送本页 在Facebook上分享


Disclaimer Privacy Policy About us Site Map

If you have any requirements, please contact webmaster。(如果有什么要求,请联系站长)
Copyright ©2011-
uuhomepage.com, Inc. All rights reserved.