一个原来在vs2003中开发的web应用,现在要迁移到2005,项目环境无法恢复,我只能手工在2005中重建项目,然后把页面.cs.refx等手工添加进去,但是无法生成,报很多错误,但主要就是所有的控件都找不到了,我已经在页面上添加了<%@ Page language="c#" AutoEventWireup="true" Inherits="HM.Hmzx.OpManage.EditOInfo" CodeFile="EditOInfo.aspx.cs"  %>,但还是不行,搞了一天了,没有成功,请各位大侠支援!页面引用:
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.ComponentModel;
using System.Drawing;
using System.Web.SessionState;
using System.Data .SqlClient ;
using HM.Pub ;
using HM.Class ;
能加的都加上了。

解决方案 »

  1.   

    而且是整个项目的,注意人家有没有引用其他的dll
      

  2.   

    代码绝对正确,页面也没有修改,用vs2005打开没有问题,设计也能显示,双击控件能够跳到其事件代码位置using System;
    using System.Data;
    using System.Configuration;
    using System.Collections;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;
    using System.ComponentModel;
    using System.Drawing;
    using System.Web.SessionState;
    using System.Data .SqlClient ;
    using HM.Pub ;
    using HM.Class ;namespace HM.Hmzx.OpManage
    {
    /// <summary>
    /// EditOInfo 的摘要说明。
    /// </summary>
    public partial class EditOInfo: System.Web.UI.Page
    {

    Operater op=new Operater ();
    protected void Page_Load(object sender, System.EventArgs e)
    {

    if(IsPostBack)
    return ;
    //正常跳转过来判断
    if(Request.Params ["o_id"]==null||Request.Params ["cmd"]==null)
    {
    Response.Redirect ("OpManage.aspx");
    return ;
    }
    //权限判断
    if(!Operater_Fun .checkRight(this.Page ,Operater.righter.op_admin ))
    {
    Response.Write (@"<script language =javascript >alert('您没有管理该项的权限');location.href='..\\Index.aspx';</script>");
    return ;
    }
    //操作判断
    if(Request.Params ["cmd"]=="add")
    {
    this.Button1.Text ="添加";
    txtName.Enabled =true;
                    
    }
    else 
    {
    //如果是自己则不允许更改权限
    if(PubFun.getCookie (Page,"userId")==Request.Params ["o_id"])
    {
    Response.Redirect ("EditMyInfo.aspx");
    }
    Button1.Text ="修改";
    txtName.Enabled =false;
    BindData();
    } this.Button1.Attributes.Add("onClick","return checkdata()");  
    }
      

  3.   

    在代码页,用this.能看到控件引用
      

  4.   

    用.net2005打开2003的项目后会有一个转换向导,近向导做完后.一般就应该能用了.
      

  5.   

    和新页面相比,它有一个designer.cs,而老页面有一个.resx页面
      

  6.   

    没有搞定。是因为开始没有转换成功,我用web developer打开了,它把其中的控件定义都删除了,但没有添加到designer里去,所以就没有定义了,但为什么this.还能调用不太清楚。我没有办法,只好一个个重建,把代码copy过去,惨!