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

Reading number is top 10 articles
asp.net中的DataTable对象学习_[Asp.Net教程]
PHP技巧:正确理解PHP程序编译时的错误信息_php资料_编程技术
Asp.net的身份验证_[Asp.Net教程]
全面接触SQL语法(6)_mssql学习_编程技术
使用C#实现阿拉伯数字到大写中文的转换_[Asp.Net教程]
delphi获取可用驱动器信息
.net控件开发(七)之复合控件(1)概念基础篇_[Asp.Net教程]
扩展GridView控件(八)——导出为Excel_[Asp.Net教程]
Menu、SiteMapPath联合制作站点导航
动态网页制作技术PHP常用的正则表达式_php资料_编程技术
Reading number is top 10 pictures
联通的3G无线网卡我只用了一天,看看流量......
猫眯也疯狂
Hunan road lawenforcement vehicle pursue overload car caused the car turn and man is died
Group of female porn in 《westwards》, uninhibited woman threatened to not the bottom line2
西班牙山村小景2
传几朵花
2013中国四川省高考作文
这是男生笨么?
Soong ching ling's former residence2
BingBingFan apple dew point photo gallery3
Download software ranking
Tram sex maniac 2 (H) rar bag12
Boxer's Top ten classic battle10
Tram sex maniac 2 (H) rar bag9
仙剑奇侠传98版歌曲
电脑知识及技巧大合集
Unix video tutorial7
美女写真3
The Bermuda triangle3
圣殿祭司的ASP.NET.2.0.开发详解-使用C#
Wild things 2
delv published in(发表于) 2014/1/27 6:50:10 Edit(编辑)
Visual,Studio2005发布问题解决办法_[Asp.Net教程]

Visual,Studio2005发布问题解决办法_[Asp.Net教程]

Visual Studio2005发布问题解决办法_[Asp.Net教程]

  本文主要解决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.