本人在使用页面之间传值的时候总是遇到一个比较麻烦的问题..希望哪位能帮忙解决一下...例子如下...AAA.aspx.cs
省略using...    public partial class AAA : System.Web.UI.Page
    {        protected void Page_Load(object sender, EventArgs e)
        { 
            
        }
        public string textContain
        {
           get 
           { 
               return textBox.Text; 
           }
        }
               protected void regSubmit_Click(object sender, EventArgse)        
        {
            Server.Transfer("BBB.aspx");
        }    }
BBB.aspx.cspublic partial class BBB : System.Web.UI.Page
{
        protected void Page_Load(object sender, EventArgs e)
        {            AAA a = Context.Handler as AAA;
            if (a != null)
            {
                string UserAccount = a.textContain;
            }            else Server.Transfer("");        }}
AAA页面通过get方法获取本页面AAA.aspx的textBox的值.然后通过Server.Transfer("")方法传送给BBB页面..
AAA a = Context.Handler as AAA;  //实例AAA 
string UserAccount = a.textContain;  //通过a.textContain获得AAA.aspx的textBox的值..可是编译的时候常出现错误 找不到类型或命名空间名称“AAA”(是否缺少 using 指令或程序集引用?)然后我就在AAA页面定义一个名称空间... 在BBB页面导入该名称空间 可以解决..但是下次却又出现  找不到类型或命名空间名称“AAA的名称空间名”(是否缺少 using 指令或程序集引用?)然后把AAA页面的名称空间去掉.. 在BBB页面删除AAA名称空间的引用 可以解决...可是 过不了几次 又会重复出现上面第一个错误...请问这到底是什么原因啊??PS: AAA 和 BBB都是在同一个 项目 同一个目录下

解决方案 »

  1.   

    在AAA中代码修改如下
            protected void regSubmit_Click(object sender, EventArgse)        
            {
                Server.Transfer("BBB.aspx?textContain="+textBox.Text);
            }
    在B中
            protected void Page_Load(object sender, EventArgs e)
            {
                    string UserAccount=Request.QueryString["textContain"];
            }
      

  2.   

    如果在AAA的参数中有中文,代码应如下,否则在BBB中接收的参数会是乱码
                Server.Transfer("BBB.aspx?textContain="+Server.UrlEncode(textBox.Text));
      

  3.   

    1.
    asp.net 建议使用 PreviousPage 属性2.
    确保命名空间正确导入, 那么可能是IDE的缓存问题而已3.
    PS: AAA 和 BBB都是在同一个 项目 同一个目录下
    ===========
    跟具体的物理目录位置没有关系