VS2003 转 VS2005 常见的问题解决

来源:互联网 发布:西安财经行知学院好吗 编辑:程序博客网 时间:2024/05/16 12:27
<IFRAME name=google_ads_frame marginWidth=0 marginHeight=0 src="http://googleads.g.doubleclick.net/pagead/ads?client=ca-pub-4490194096475053&amp;dt=1228740420578&amp;lmt=1228528488&amp;prev_slotnames=1891601125&amp;output=html&amp;slotname=3685991503&amp;correlator=1228740420531&amp;url=http%3A%2F%2Fwww.corange.cn%2Farchives%2F2008%2F10%2F1874.html&amp;ea=0&amp;ref=http%3A%2F%2Fwww.corange.cn%2Fhtml%2Fcorange__96.html&amp;frm=0&amp;ga_vid=1505292923.1228740421&amp;ga_sid=1228740421&amp;ga_hid=2017041551&amp;flash=9.0.124.0&amp;u_h=768&amp;u_w=1024&amp;u_ah=715&amp;u_aw=1024&amp;u_cd=32&amp;u_tz=480&amp;u_his=1&amp;u_java=true&amp;dtd=15" frameBorder=0 width=300 scrolling=no height=250 allowTransparency></IFRAME>
我使用ASP.NET已经3年了,刚开始是使用手动编写,后来使用 VS2003,又从 .NET Framework 1.0 升级至 1.1 ,一直都没有问题。
  这段时间,由于要开发手机应用,准备从 VS2003 向 VS2005 过渡。在没有看过两者有什么区别前,我就尝试将原来的 VS2003的项目转换成VS2005的项目。转换结束后,出现了一大堆的错误,而且很多文件都导不进vs2005的项目中。经仔细研究后发现,我的程序.aspx 文件中引用了Web控件,在.cs文件中申明为 public ,但他要求是 protected。如:
我申明为: public Label ctlMsg;  (申明为 public 是个不好的习惯)

正确的应该是: protected Label ctlMsg;
所以在转换项目前,要先把所有申明为 public 的控件修改为 protected ,再转换,否则这个文件就无法导入到项目中。
  当我把所有申明为 public 的控件修改为 protected 后,转换成功了。我在VS2003中看了一下项目,所有文件都转换过来了。
  本以为可以正常使用了,我正高兴地去编译程序,又发现无法编译通过,出了很多错误。


  错误1:Validation (Internet Explorer 6): .....................
  说明:网页的Html代码不符合规范,如: <table>[color=#ff0000]<form><tr></tr></form></table>
  解决: 菜单 Tools => Options => Text Editor => HTML => Validation 取消 Show Errors


  错误2:Error 1 Missing partial modifier on declaration of type 'Index'; another partial declaration of this type exists D:/root/www.5xsoft.com/Index.aspx.cs 12 14 D:/root/www.5xsoft.com/
  说明:从网页中继承出来的类的要加上 partial 申明
  如 public class Index : System.Web.UI.Page
  解决:加上 partial 如 public partial class Index : System.Web.UI.Page

  错误3:Error 1 The type 'ZSWeb.Article' already contains a definition for 'ctlTitle' D:/root/www.5xsoft.com/Article.aspx.cs 20 25 http://localhost/www.5xsoft.com/
  说明:VS2003中,使用Web控件要在.cs中申明后才能使用,但在 VS2005中默认不能申明。
  解决:删除.cs文件中的 Web 控件声明。如删除 protected Label ctlTitle;
  小结:其实这里,我绕了一个圈,在转换项目前,直接把 Web 控件声明删除掉,就不会有错误3出现了。
原创粉丝点击